home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Business Master (3rd Edition)
/
The Business Master (3rd Edition).iso
/
files
/
utilenus
/
cmfiler
/
cf536-s.exe
/
MANUAL.535
< prev
next >
Wrap
Text File
|
1993-03-23
|
203KB
|
4,530 lines
*******************************
* *
* CMFiler -- Version 5.35 *
* *
*******************************
SHAREWARE DISK/FILE MANAGER
Copyright 1991-92 Charles F. Martin
President, NoVaSoft - Member ASP
3239 Riverview Dr.
Triangle, VA 22172-1421 USA
Phone (703) 221-1471/1833 CompuServe 72130,1400
Internet 72130.1400@compuserve.com
_______
____|__ | (R)
--| | |-------------------
| ____|__ | Association of
| | |_| Shareware
|__| o | Professionals
-----| | |---------------------
|___|___| MEMBER
Assembled using Wolfware Assembler WASM Ver 2.22x,
(c) 1985-1991 Eric Tauck, Wolfware
Manual developed using PC-Write Ver 3.04,
(c) 1983-90 Bob Wallace, Quicksoft
FOREWORD CONCERNING SHAREWARE AND CMFiler:
_____
Definition of Shareware. . .
Shareware distribution gives users a chance to try software before
buying it. If you try a shareware program and continue using it, you are
expected to register. Individual programs differ on details -- some
request registration while others require it, some specify a maximum
trial period. With registration, you get anything from the simple right
to continue using the software to an updated program with printed manual.
Copyright laws apply to both shareware and commercial software, and
the copyright holder retains all rights, with a few specific exceptions
as stated below. Shareware authors are accomplished programmers, just
like commercial authors, and the programs are of comparable quality. (In
both cases, there are good programs and bad ones!) The main difference
is in the method of distribution. The author specifically grants the
right to copy and distribute the software, either to all and sundry or to
a specific group. For example, some authors require written permission
before a commercial disk vendor may copy their shareware.
Shareware is a distribution method, not a type of software. You
should find software that suits your needs and pocketbook, whether it's
commercial or shareware. The shareware system makes fitting your needs
easier, because you can try before you buy. And because the overhead is
low, prices are low also. Shareware has the ultimate money-back
guarantee -- if you don't use the product, you don't pay for it.
CMFiler is a copyrighted shareware program by Charles F. Martin,
President, NoVaSoft and author member of the Association of Shareware
Professionals. The evaluation edition of CMFiler is offered at no charge
to any potential user for evaluation. Feel free to share the evaluation
edition with your friends, but please do not give it away altered or as
part of another system. The essence of "user-supported" software is to
provide personal computer users with quality software without high
prices, and yet to provide incentive for programmers to continue to
develop new products.
_____
Ombudsman Statement. . .
This program program is produced by a member of the Association of
Shareware Professionals (ASP). ASP wants to make sure that the shareware
principle works for you. If you are unable to resolve a shareware-
related problem with an ASP member by contacting the member directly, ASP
may be able to help. The ASP Ombudsman can help you resolve a dispute or
problem with an ASP member, but does not provide technical support for
members' products. Please write to the ASP Ombudsman at 545 Grover Road,
Muskegon, MI 49442 or send a CompuServe message via CompuServe Mail to
ASP Ombudsman 70007,3536.
_____
CMFiler Disclaimer - Agreement. . .
Users of CMFiler must accept this disclaimer of warranty:
CMFiler is supplied as-is. The author disclaims all warranties,
expressed or implied, including, without limitation, the warranties of
merchantability and of fitness for any purpose. The author assumes no
liability for damages, direct or consequential, which may result from the
use of CMFiler.
CMFiler - Foreword 2
*******************************
* *
* CMFiler -- Version 5.35 *
* *
*******************************
TABLES OF CONTENTS:
_____
INDEX TO TOPICS AND OPERATIONS:
_____
OVERVIEW:
File Contents. . . . . . . . . . . . . . . . . . . . . Ov-1
Program Logical and Physical Organization. . . . . . . Ov-3
Security Features. . .
Monitor Options. . . . . . . . . . . . . . . . . . . . Ov-4
Precautions and Limitations. . . . . . . . . . . . . . Ov-5
Assumption about User's Familiarity with DOS . . . . . Ov-6
Additional Note for Windows Users. . .
Assertion. . . . . . . . . . . . . . . . . . . . . . . Ov-7
Special Thanks . . .
_____
TUTORIAL -- Chapter 1: File Handling:
GETTING STARTED, or the "Kernel" and the "Overlay": . . 1-1
Rename CMFILER to Spare My Fingers. . .
The Screen. . . . . . . . . . . . . . . . . . . . . . . 1-2
The Help Area . . . . . . . . . . . . . . . . . . . . . 1-3
More on the "Modifier Keys" . . .
Two Panels. . . . . . . . . . . . . . . . . . . . . . . 1-4
Color Palette . . .
Alphabetic Case Options . . . . . . . . . . . . . . . . 1-5
Cursor Movement . . .
Switching Drives or Disks . . .
Subdirectories. . . . . . . . . . . . . . . . . . . . . 1-6
Copy Some Files, then Do It with Tags . . .
Tagging, Backing Up . . . . . . . . . . . . . . . . . . 1-7
Moving Files. . . . . . . . . . . . . . . . . . . . . . 1-8
Deleting a File . . .
The Tagging Convention Expounded on . . . . . . . . . . 1-9
Renaming a File OR a Directory. . . . . . . . . . . . . 1-10
Some Additional Tagging Options . . .
Copy with Rename. . . . . . . . . . . . . . . . . . . . 1-11
The File Freshener. . . . . . . . . . . . . . . . . . . 1-11
Different Ways to Show the Files. . .
The Data Entry Window . . .
Disk Space Occupied versus Actual File Size . . . . . . 1-12
File Attributes . . .
Changing the Date/Time Stamp of a File. . . . . . . . . 1-13
"Alt-Tagging" and Appending. . .
Printing a File . . . . . . . . . . . . . . . . . . . . 1-14
Making Some Notes About Your Files. . .
Printing a Directory Listing. . . . . . . . . . . . . . 1-15
Comparison Mode. . .
Hide Mode . . . . . . . . . . . . . . . . . . . . . . . 1-16
Mask Template. . .
Displaying Date and Time. . .
Changing or Adding a Volume Label . . .
Some Safeguards. . .
Saving User Setup Options . . . . . . . . . . . . . . . 1-17
Help. . . . . . . . . . . . . . . . . . . . . . . . . . 1-19
Command Line Parameters . . .
Quitting CF . . . . . . . . . . . . . . . . . . . . . . 1-20
_____
TUTORIAL -- Chapter 2: File Viewing and Editing:
Viewing a File. . . . . . . . . . . . . . . . . . . . . 2-1
Record Delimiters . . .
Information Area. . .
Line Wrapping . . . . . . . . . . . . . . . . . . . . . 2-2
Cursor Movement . . .
Find a String . . .
Leading and Trailing Blanks in the Data Window. . . . . 2-3
Editing a File. . .
Edit Mode Limitations . . .
Typeover vs Insert. . .
Editing a Line. . . . . . . . . . . . . . . . . . . . . 2-4
More on Record Delimiters . . .
Alt-Keypad and Alt-N . . .
Block Operations. . .or the REAL Power of CF's Editor
Marking a Block, and the Copy Buffer. . . . . . . . . . 2-5
Delete, Copy, Move. . .
Restoring from Inadvertent Block Deletion . . .
Sending a Block of Text to the Line Printer . . .
. . . or to a File. . . . . . . . . . . . . . . . . 2-6
Replace and Global replace. . .
Leaving Edit Mode . . .
Backup File Protection. . . . . . . . . . . . . . . . . 2-7
Creating a New File . . .
Help. . .
CMFiler -- Table of Contents ii
_____
TUTORIAL -- Chapter 3: The TREE Functions:
The Display . . . . . . . . . . . . . . . . . . . . . . 3-1
Copying structures. . . . . . . . . . . . . . . . . . . 3-2
The "Copy Into" Function. . . . . . . . . . . . . . . . 3-4
Moving structures . . . . . . . . . . . . . . . . . . . 3-5
Copying Just the Files. . .
Copying Just the Directory Array. . .
Deleting Structures . . .
Delete Just the Files . . . . . . . . . . . . . . . . . 3-6
Show the File List. . .
Find (Goto) a File. . . . . . . . . . . . . . . . . . . 3-7
Goto a Directory. . . . . . . . . . . . . . . . . . . . 3-8
Find Text . . .
Viewing or Editing Files. . . . . . . . . . . . . . . . 3-9
Deleting Files from the File List . . .
Print a Hard Copy of the Tree . . .
Precaution Regarding CF_TRASH.CAN . . .
Help. . . . . . . . . . . . . . . . . . . . . . . . . . 3-10
Leaving the Tree Functions. . .
_____
TUTORIAL -- Chapter 4: Launching User Applications:
Terminology: User Application as "Child" Program . . . 4-1
Resident Footprint of CF. . .
"Shelling" to DOS . . . . . . . . . . . . . . . . . . . 4-2
Review of DOS Command Line Structure. . .
Launching a Program from the Main Screen. . . . . . . . 4-3
Immediate Execution . . .
Execution with Command Tail . . .
Execution with a Single File Name in Command Tail . . . 4-4
"Seeding" the Command Tail. . .
Changing the Command Tail "Seed" Delimiter. . . . . . . 4-5
Customizing Your User Application File Specifications .
A Further Execution Option -- Instant ZIPping/UNZIPping 4-7
ZIP a File. . .
Now UNZIP a File. . . . . . . . . . . . . . . . . . . . 4-8
Tailoring CF for custom ZIP/UNZIP spec. . .
Using Other Compression Utilities . . . . . . . . . . . 4-9
Specifying a Password for Access from Screen Saver. . . 4-10
_____
REFERENCE -- Description by Operation:
_____
MEMORY MAPS -- Information on Memory Allocation:
CMFiler -- Table of Contents iii
*******************************
* *
* CMFiler -- Version 5.35 *
* *
*******************************
INDEX TO TOPICS AND OPERATIONS:
Topic or Operation Module Command Page
------------------ ------ ------- ----
Appending files:
to target panel Main Alt-T, then C 1-13
to source panel Main Alt-T, then B 1-13
Application launching: See
Child process execution
ASCII entry with keypad: Edit Alt-Keypad 2-4
Attributes, directory:
toggle "hide", at curs Main 2 1-12
toggle "hide", at curs Tree 2 3-2
Attributes, file:
toggle "read", at curs Main 1, no tags 1-12
toggle "read", tagged Main 1, w/ tags "
toggle "hide", at curs Main 2, no tags "
toggle "hide", tagged Main 2, w/ tags "
toggle "sys", at curs Main 3, no tags "
toggle "sys", tagged Main 3, w/ tags "
toggle "arch", at curs Main 4, no tags "
toggle "arch", tagged Main 4, w/ tags "
zero all attrs, at curs Main 0, no tags "
zero all attrs, tagged Main 0, w/ tags "
Back up files in directory: 1-7
file at cursor Main B, no tags
tagged files in direc Main B, w/ tags
Block operations: Edit 2-4
Case options: Main Ctl-E 1-5
Change directories:
to directory at cursor Main Enter 1-6
to parent directory Main P "
show direc in opp panel Main Shf-Enter "
show parent in opp panel Main Shf-P "
to root directory Main \ "
Tree Home 3-2
Topic or Operation Module Command Page
------------------ ------ ------- ----
Change to new drive or disk: Main N 1-5
Tree N 3-2
Child process execution:
Shell to DOS Main S 4-2
quick execute file at Main Q 4-3
cursor, no command
tail
ready file at cursor Main X 4-3
for execution
seed command tail with Main Alt-C 4-4
full path spec to file
at cursor
seed command tail with Main Alt-T 4-4
name of file at cursor
edit command tail and Main Alt-X 4-3,4-4
execute readied file
execute readied file, Main Shf-X 4-4
no edit of command
tail
execute readied file, Main Ctl-X 4-4
first adding name of
file at cursor to
command tail
assign executable files Main Shf-F10 See Function
to Function Keys Keys
Color palette: Main Ctl-P 1-4
Command line parameters: 1-19
Compare mode, toggle: M/T Ctl-C 1-15,3-1
Concatenating files:
to target panel Main Alt-T, then C 1-13
to source panel Main Alt-T, then B "
Configuration file: 1-16
Copy operations:
file at cursor to target Main C, no tags 1-6
tagged files to target Main C w/ tags "
freshen one directory Main Shf-F 1-11
from another
structure, incl files Tree C 3-2,3-4,3-5
structure w/o files Tree Alt-C 3-5
text in marked block Edit Alt-C 2-5
Copy with rename: Main Alt-R 1-11
CMFiler -- Index Ind-2
Topic or Operation Module Command Page
------------------ ------ ------- ----
Create new file: Main F 2-7
Cursor movement:
in directory listings Main 1-4
in tree structures Tree 3-2
in editor Edit 2-1
Data entry window: All 1-11
Date/time, change file: Main Alt-F 1-13
Date/time, display system: Main Space 1-16
Definitions:
CF_TRASH.CAN directory 1-7
Child process 4-1
Compare mode 1-15
Hide mode "
Kernel 1-1
Module Ov-2,1-1
Overlay 1-1
Source panel 1-4
Target panel "
Delete operations:
"soft" vs "hard" 1-8
resetting D to hard 1-17
file at curs, soft Main D, no tags 1-8
file at curs, hard Main Ctl-D, no tags "
tagged files, soft Main D, w/ tags "
tagged files, hard Main Ctl-D, w/ tags "
directory at cursor Main D, dir void 1-6
structure at curs, soft Tree D 3-5
structure at curs, hard Tree Ctl-D "
text in marked block Edit Alt-Y 2-5
line of text Edit Ctl-Y 2-4
word of text Edit Ctl-T "
text to end of line Edit Ctl-D "
CMFiler -- Index Ind-3
Topic or Operation Module Command Page
------------------ ------ ------- ----
Directory:
delete (only if empty) Main D 1-6
delete direc structure Tree D or Ctl-D 3-5
make new Main M 1-6
Tree M 3-2
rename Main R 1-2,1-10
Tree R 3-2
display subdir in srce Main Enter 1-6
display subdir in trgt Main Shf-Enter "
display parent in srce Main P "
display parent in trgt Main Shf-P "
display root in source Main \ "
display root in target Main Shf-\ "
display source in trgt Main Shf-* "
Display options:
show Hidden files, Main Ctl-H 1-15
dirs; toggle Tree Ctl-H 3-2
Compare mode, toggle Main Ctl-C 1-15
Tree Ctl-C 3-2
define filename Mask Main Ctl-M 1-15
Find text Tree Shf-F 3-8
Goto (find) directory Tree Alt-G 3-8
Goto (find) file Tree G 3-7
Show file list Tree S 3-6
file time, size in K Main - 1-12
no file time, full size Main + 1-12
DOS, Shell to: Main S 4-2
Edit file at cursor: Main E 2-3
Edit file from notes screen Main Alt-E 1-14
Edit file from tree file Tree E 3-9
list:
File Masking: Main Ctl-M 1-16
File sorting: Main Ctl-O 1-11
Find file: 3-7
from main module Main Shf-T, then G
from tree module Tree G
Find string: Edit Alt-F 2-2
Find text: Tree Shf-F 3-8
CMFiler -- Index Ind-4
Topic or Operation Module Command Page
------------------ ------ ------- ----
Form feed printer: Main Ctl-F 1-13
Tree Ctl-F
Edit Ctl-F
Freshen directory from Main Shf-F 1-11
opposite panel:
Function Keys:
assign applications to Main Shf-F10 4-5
Function keys
ready app at F1-F9 Main Fn 4-6
for execution
execute readied Fn app Main Alt-X, 4-6
Shf-X, or
Ctl-X
execute app to operate Main Ctl-Fn 4-6
on file at cursor
execute app to operate Main Shf-Fn 4-6
on constructed
command line
Global replace string: Edit Alt-G 2-6
Goto file: Main G, then name 1-5
Tree G, then name 3-7
Goto subdirectory: Main Alt-G, name 1-5
Tree Alt-G, name 3-8
Help, on-line: Main H Ov-2,1-19
Tree H 3-10
Edit Alt-H 2-7
Hide mode, toggle: M/T Ctl-H 1-16,3-1
Kernel, resident, set size: Main K 4-1,4-5
Launching applications: See
Child process execution
Limitations:
dir size (300,600,1200) Main Ov-5
file size in edit mode Edit "
memory required (182 K) "
tree entries (500 dirs) Tree "
dir nesting (8 levels) M/T "
Make new directory: Main M 1-6
Tree M 3-2
CMFiler -- Index Ind-5
Topic or Operation Module Command Page
------------------ ------ ------- ----
Masking, in direc listing: Main Ctl-M 1-16
Monitor options: Ov-4
Moving operations:
files within disk Main Shf-C 1-8
structures w/in disk Tree Shf-C 3-5
block of marked text Edit Alt-V 2-5
New drive or disk, change: Main N 1-5
Tree N 3-2
Notes: edit Main Ctl-N 1-14
view Main Shf-N "
NULL character, entering Edit Alt-N 2-4
Options, user, saving Main Shf-S 1-17
Options, user, setting Main Shf-O 1-17
Ordering scheme, select: Main Ctl-O 1-11
Overcopy switch, toggling: Main Shf-O 1-17
Tree Shf-O 3-3
Password, entering: Main Shf-F10 Ov-3,4-9
Printing:
put file in print queue Main L 1-14
look at print queue Main Shf-L "
cancel print queue Main Ctl-L "
print directory listing Main Alt-L 1-15
print directory listing Main Shf-N or Ctl-N "
with notes then Alt-L
print tree structure Tree Alt-L 3-9
Print marked text block Edit Alt-P 2-5
Output block to file Edit Alt-O 2-6
Quitting:
to DOS from main module Main Esc-other, or 1-20
Alt-Q
to DOS from tree module Tree Alt-Q 3-9
to main from tree module Tree Esc or Enter "
to main from file edit Edit Esc 2-6
to main from file view Edit Esc or Enter 2-6
Refresh panel from disk: Main Shift-R 1-5
Tree Shift-R 3-2
CMFiler -- Index Ind-6
Topic or Operation Module Command Page
------------------ ------ ------- ----
Remove (Delete) directory: Main D (must be void) 1-6
Rename file or directory at Main R 1-1,1-10
cursor: Tree R 3-2
Replace string: Edit Alt-R 2-6
Resident kernel, set size: Main K 4-1,4-5
Screen saver:
normal timeout to Main Ov-3
forcing before timeout Main Ctl-S Ov-3
freshening directories Main Ov-6
after return, switch
setting
Security features:
cleared I/O buffers Ov-3
password access denial Main Ov-3
Self-checking: Main Ov-4
Setup options: Main Shf-O 1-16
Shell to DOS: Main S 4-2
Sorting of (Ordering) files: Main Ctl-O 1-11
Startup options: 1-19
Subdirectories:
make new Main M 1-6
Tree M 3-2
rename Main R 1-1,1-10
Tree R 3-2
Tagging operations on files:
toggle Tag at cursor Main T or Space 1-6
toggle All tags in direc Main Ctl-A 1-10
clear or set All tags Main A 1-6
all files same naMe as Main Alt-M 1-10
all files same Ext as Main Alt-E "
all files Newer Main Alt-N "
all files Older Main Alt-O "
all files same Date Main Alt-D "
tag in oPposite panel Main Alt-P "
"Append" or "Alt" Tag Main Alt-T 1-10,1-13
Time/date, change file: Main Alt-F 1-13
CMFiler -- Index Ind-7
Topic or Operation Module Command Page
------------------ ------ ------- ----
Time/date, display system: Main 5 or % 1-16
TSR's, precaution about: Ov-5
UNZIPping with PKZIP utils:
with command line edit Main U 4-8
no command line edit Main Shf-U "
View file at cursor: Main Enter 2-1
View file from notes screen Main Alt-V 1-14
View file from tree file Tree V 3-9
list:
Volume label, setting: Main V 1-16
ZIPping with PKZIP utils:
with command line edit Main Z 4-7
no command line edit Main Shf-Z "
designating files to ZIP Main T/Alt-T "
CMFiler -- Index Ind-8
*******************************
* *
* CMFiler -- Version 5.35 *
* *
*******************************
File Contents. . .
There are ten files in the CMFiler package:
o CMFILER.COM - The "kernel" of the CMFiler program
o CMFILER.OVY - Its supporting program overlay
o CMFILER.DOC - This manual, which is the full documentation
o CMFILER.BRF - A brief summary of features for quick reference
o CMFILER.REG - A file containing the registration form, an
explanation of the shareware concept, and a
statement of the Association of Shareware
Professionals concerning its ombudsman services
for registered users of shareware applications.
o DESC2NAR.COM- A program for 4DOS/NDOS users for converting the
DESCRIPT.ION files containing file and directory
notes into the CMFiler NARATIVE.CF file format.
o DESC2NAR.DOC- The documentation for DESC2NAR.COM.
o CHANGES - A brief compilation of the changes and bug fixes
since Version 5.22.
o READ.ME - A file with installation instructions.
o FILE_ID.DIZ - A description file used by BBS system operators.
CMFiler is not "public domain" software or "freeware". It is
offered as shareware for evaluation and distribution unaltered to others,
with the understanding that, if you find you are using it after a 60-day
trial period, you will pay a registration fee of $30. Please refer to
CMFILER.REG for registration information and a definition of shareware.
I am so convinced of CMFiler's wide usability and appeal that, once you
register your copy, I will send you an instant $10 commission each and
every time someone else registers a copy and cites you as the source of
it! You may make as much money by passing CMFiler to others as you care
to. CMFiler MUST be passed as an UNALTERED collection of the evaluation
editions of the files CMFILER.COM/.OVY plus the other files listed above,
together on one disk, or as a compressed file, e.g., using the PKZIP
utility.
The form in which I prefer to pass CMFiler, because it requires no
external decompression utilities, is as the self-extracting file
CMFILER.EXE, which on execution extracts all ten files. A perfectly
suitable alternative form, preferable if you have the PKZIP utilities
because it takes up less space, is as the ZIP file CMFILER.ZIP, which on
unZIPping yields all ten files. Any package that contains all ten files
unaltered is acceptable.
CMFiler provides a quick, simple, "one-touch" operating environment
for your IBM-compatible 80x86-based computer running under DOS Version 2
or later. While its name implies it is a file manager, it is much, MUCH
more. Once you have used CMFiler for a few sessions, you will not want
to struggle with the DOS COMMAND.COM command processor or your other file
managers ever again! CMFiler was painstakingly written in Assembly
language over a three-year period, carefully factoring in the suggestions
of a dozen of the world's pickiest software critics. It is compact and
lightning fast.
CMFiler is capable of doing everything your DOS COMMAND.COM
processor or other file manager can do, and more, but with EASE! --
displaying two directories side-by-side; copying one or more files from
one directory to another; backing up files in the same directory;
deleting and renaming files and directories; setting file and directory
attributes; concatenating (stringing together) multiple files; viewing
and editing files; making and removing subdirectories; printing files in
the "background" while you perform other tasks; setting disk volume
labels; printing directory listings; keeping notes; displaying two disk
structures side-by-side as "trees", and performing a full set of
operations on their structures; and executing child processes -- all with
a minimum number of keystrokes and maximum "transparency".
Operations are keyed to single-letter mnemonics, making CMFiler
intuitive and easy to learn. For example, the letter C means "copy", the
letter D "delete", and so forth. Almost everything you need to know
about CMFiler is contained in a two-line prompt at the bottom of the
screen, or can be summoned instantly with a single keystroke (surprise! H
for "help"), with no delay for external file reading, since the help is
imbedded in the program code. There are only a few things for which you
will need to refer to this manual once you begin using CMFiler.
CMFiler employs the BIOS and DOS disk service routines which are
embedded in ROM or loaded into RAM when your computer boots, and the DOS
file operation safeguards and error flags are employed, such as denying
access to remove non-void subdirectories. I have added a few of my own,
such as protection of files against being overwritten by zero-length
files of the same name (resulting from an occasional DOS read-write
failure).
CMFiler performs most operations immediately, and does not ask
for confirmation as other file managers do, unless file destruction is
involved. You must confirm with a separate keystroke, for example,
CMFiler -- Overview Ov-2
that you really DO want to delete files, or that you really DO want to
overwrite a more recent version of a file during a copy operation.
Otherwise CMFiler takes for granted that you are doing exactly what you
had in mind, on the basis that a mistake can be recovered from with just
a few more keystrokes. The "mass" operations, like copying large numbers
of tagged files, all have an Esc bailout.
_____
Program Logical and Physical Organization. . .
The CMFiler program code is organized "logically" (in the
programmer's sense) into three sections, or "modules". These will be
referred to variously as the "main module" or "main screen"; the "editor
module" or "editor"; and the "tree module" or "tree functions". Each
module performs some major function or group of functions which is
fundamentally different from the rest, discussed further below. On the
other hand, the program is broken PHYSICALLY into two main pieces, in
this case two files, namely, the file "CMFILER.COM", sometimes referred
to herein as the "kernel"; and the file "CMFILER.OVY", or the "overlay".
The kernel contains the most vital part of the main module, the
"starter", and the overlay, which the kernel loads contiguous to itself
in memory, contains the rest of the main module, plus all of the editor
and tree modules. A memory map is included in this manual for those
interested.
The main module displays one directory on the left side of the
screen, or two directories in side-by-side panels. The subdirectories of
each directory are always shown at the top of the listing in alphabetical
order, following by the files in one of seven user-specified ordering
schemes. Commands operate on a subdirectory or one or more files in one
panel (the source panel). Some commands, like Copy, write to the
directory in the other panel (the target panel). The main module gives a
somewhat myopic or "microscopic" view of your disk, one directory at a
time, but does so with the most complete set of file and directory
services available in the file manager today. The other two modules
(editor and tree) are accessed from the main, and the editor may also be
accessed from the tree.
The editor is called to create, edit or view a file. To view or
edit an existing file in the main module, just put the cursor on it and
press E or Enter. To create a file, press F and type in a name for the
new file.
The tree module is called from the main module with Shift-T. It
displays the entire directory tree structure of one disk in the left
panel, or two trees for the same or different disks in side-by-side
panels. Whole structures ("branches") of a tree, or if you wish just the
files in one directory, may be copied, moved or deleted in their
entirety. Some file manager documentation call this kind of capability
"prune-and-graft". This capability is "macroscopic" in scope, compared
CMFiler -- Overview Ov-3
to the main modules, as it deals with the big picture of your disk
organization. But CMFiler does much more than most file managers. In
addition to the "macroscopic" prune-and-graft-type operators, you may do
some microscopic things as well, like display the files in each
subdirectory as you navigate through the tree, find a specific file
anywhere on the disk, search for a text string in all or some of the
files on the disk -- even view or edit a file, and delete it without
having to return to the main file services module. This latter feature
in particular makes disk cleanup a breeze!
_____
Security Features. . .
CMFiler incorporates security features which support its
use on systems containing sensitive information:
o You may specify a password, and change it at any time during a
session, which must be given back to reenter CMFiler once it has gone
to screen-saver mode (about 1-1/2 minutes after last keystroke from
main screen display). This password is the bottom-most field in the
data entry screen presented by the key combination Shift-F10 --discussed
in further detail in Chapter 4.
o You may force CMFiler into screen-saver mode with the key
combination Ctrl-S. This is so that, if you want to secure access to
your computer immediately, you don't have to wait the 1-1/2 minutes for
the screen-saver and password to automatically be invoked.
o If you set the option "Clear I/O buffers if located?" in the
Shift-O Options screen, CMFiler will attempt to locate and overwrite all
the DOS input/output buffers with the continuous string "CFCFCFCF..."
before starting any file writing operations. This operation ensures that
the file being written does not contain any stray data in the "slack
space" of the last sector written that was hanging around from a previous
I/O operation. ( ***DR DOS USERS:*** The option to clear I/O buffers
should NOT be invoked if you are operating under DR DOS. This operating
system responds very ungracefully to the buffer clearing feature. For
this reason, I have set the default option to NOT clear I/O buffers.)
CMFiler also employs a rudimentary check-summing routine to check
the .COM and .OVY files each time they are loaded. This routine will
sense any changes in the execution code and fixed data areas of either
file, and warn the user of the corruption. Files may become corrupted as
a result of an operating system error during data transmission, a sector
going bad on a disk, or external tampering by a person or a virus. This
check-summing feature can detect (and has detected) the presense of some
older file infecting viruses, but may be foiled by modern stealth
viruses, so DO NOT count on it for virus protection. There is no
substitute for good antivirus software. I use and strongly recommend
Wolfgang Stiller's Integrity Master. He is President of Stiller Research
CMFiler -- Overview Ov-4
and a member of the ASP's Virus Information Panel, and a recognized
expert in the anti-virus community.
_____
Monitor Options. . .
CMFiler should work with all reasonably current IBM-compatible
CGA/EGA/VGA and monochrome monitors, though I have heard of some problems
with machines under very early BIOS (Basic Input/Output System) versions.
You may specify a type of monitor one of two ways:
o When first run, if CMFiler cannot find a .CFG file containing
previously specified user option data, and does not sense a monochrome
monitor installed (which only supports one color set), it knows it cannot
tell for sure what you have installed and will ask you to specify a
monitor type by pressing C, L, T or M. Your choice is immediately
recorded by CMFiler creating a .CFG file. If you have an LCD monitor
other than Tandy, you may invoke a generic LCD color set with the letter
L. For Tandy LCD's use T. (Tandy for some unfathomable reason inverts
the function of the high-intensity bit in the color attribute.) If you
have a "monochrome" monitor being driven by a color card, CMFiler senses
the color card's presence, not the monitor's. Press M for this case to
force the monochrome color set. You may also put one of these four
letters in the command line, preceded by the character @, and bypass the
initial question.
_____
Precautions and Limitations. . .
There are a few precautions and limitations the user should be
aware of:
o Terminate-and-Stay-Resident programs should NOT be launched from
CMFiler. At best you will end up with a fragmented memory when
you exit CMFiler, and at worst you will have a SYSTEM CRASH.
o CMFiler requires a minimum of 197 KB of free memory to run. This
permits generous memory allocations for the directory listings,
a print spooler buffer, and a large copy buffer. During
application launching, however, the resident portion of CMFiler
can be made to occupy as little as 19 KB, using the "Small"
footprint option of the "Kernel" command (letter K pressed from
the main screen -- discussed more in Chapters 1 and 4).
o Maximum directory size recognized by the main module varies from
300 to 1200 entries, depending on free memory available. If
the directory size limit is reached, an informational note is
given. The rest of the directory is inaccessible, as though it
CMFiler -- Overview Ov-5
were hidden. This is a benign, non-damaging limitation.
o The algorithms used by the editor module place certain
limitations on it in "edit" mode which do not apply in "view"
mode. If you attempt to edit a file which exceeds these
limitations, the editor reverts to view mode automatically:
o Files too large to fit in available memory in one
shot, or
o Files with more than 16,380 lines.
o Files with lines longer than 8190 characters if editing
in "NoWrap" mode.
o The tree module limits the number of entries in a directory tree
structure to 505 total subdirectories, and the total files to
3488.
o The main and tree modules both limit the depth of directory
nesting to eight levels (eg, "C:\1\2\3\4\5\6\7\8" is an example
of the most deeply nested path allowed), and the length of path
specifications to 66 characters (this is a DOS limitation).
o A limitation of DOS itself which users frequently run into and
are puzzled by, because of the cryptic error message DOS
returns, is the maximum number of entries permitted in the root
directory. This number is 112 for 5.25" disks formatted at
360KB and 3.5" @ 720KB; and 224 for 5.25" @ 1.2MB and 3.5" @
1.44MB. The error message returned is "Access denied creating
file". Be aware that the volume label and each subdirectory is
an "entry", as well as each file.
o Finally, CMFiler does not yet support mouse or 43/50 line
EGA/VGA display capability. I have concentrated on packing the
MOST COMPLETE set of useful operational features into the
smallest, most intuitively organized package I could, and have
not yet had the time (and do not yet have the hardware
capability myself) to write and debug these additional user
interface features. With respect to the mouse, my feeling is
that ease of use has less to do with the HARDWARE interface
between the user and the computer than the LOGICAL interface,
and I have concentrated on writing the best logical interface
possible. (In other words, a cumbersomely constructed program
remains cumbersome, EVEN when you add a mouse!)
If there is overwhelming request for addition of mouse support
or 43/50 line display, I will consider adding it. Otherwise I
will stick with the basics.
CMFiler -- Overview Ov-6
_____
Assumption about User's Familiarity with DOS. . .
It is assumed that the user knows at least a smattering about DOS
system operation, and has at least a beginner's understanding of the
use of the DOS COMMAND.COM processor, or other file management
programs. I assume terms like "file", "subdirectory" and "path" need
not be defined. If these are alien notions, however, there are any
number of books on DOS written to different levels of proficiency
which may be consulted as a resource.
_____
Additional Note for Windows Users. . .
Though not designed as a Windows application, CMFiler appears to be
operating satisfactorily as a DOS program in the Windows environmemt.
One nuisance feature will probably need to be corrected if you are
running it under Windows, however. The default assumption on return from
screen saver mode is that the disk directories have not been altered
while CMFiler has been idling. Under Windows, this is not necessarily a
valid assumption, since another foreground application may have operated
on the directories CMFiler was selected to when it went into the
background. Therefore for Windows users there is a switch which may be
set, using the command Shift-O (where O is for Options) telling CMFiler
to refresh the directory listings on return from the screen saver.
_____
Assertion. . .
I believe CMFiler is the most powerful and transparent file manager
you will ever find anywhere for its price and size. It is being offered
as a shareware utility in the hope that you will find it useful, and
further that unregistered users will remit the required registration fee
of $30 in recognition of the convenience CMFiler offers. Please remember
that the shareware industry depends on the integrity, encouragement and
financial support of its user public.
_____
Special Thanks. . .
. . .to Nick Capik, Tom Vavoso, Dave Herman, Gene Feaster and Edward
Mendelson, who found most of the subtle bugs, pushed CMFiler far past my
expectations, and challenged me to include features that turned out to be
useful to us all; to Eric Tauck, who provided an excellent and
inexpensive Assembly language programming environment, then tailored it
to my needs, and gave me some inside dope on several undocumented DOS
features; and to Wolfgang Stiller, who offered advice on CMFiler's self-
CMFiler -- Overview Ov-7
checking features. Eric Tauck's Wolfware Assembler WASM can be had by
sending $10 to Eric Tauck, 1304 Deerpass Road, Marengo, IL 60152.
Wolfgang Stiller's Integrity Master anti-virus and data security system
can be had by sending $39.50 to Stiller Research, 2625 Ridgeway St.,
Tallahassee, FL 32310.
CMFiler -- Overview Ov-8
*******************************
* *
* CMFiler -- Version 5.35 *
* *
*******************************
TUTORIAL -- Chapter 1: File Handling:
_____
GETTING STARTED , or the "Kernel" and the "Overlay":
As mentioned in the OVERVIEW above, I refer to the 19 KB CMFILER.COM
file as the "kernel", the vital part of the main module, and the 82 KB
CMFILER.OVY file as the "overlay", which contains the rest of the main
module and the editor and tree modules. Physically breaking the program
into two files served two purposes -- it got around an arcane 64 KB limit
on .COM files imposed by DOS, and it let me give you two options for how
much of the program to leave resident in memory when launchig
applications from CMFiler (more in Chapter 4).
For now, copy CMFILER.COM and CMFILER.OVY into the root directory of
your hard disk or a working floppy using your good ol' DOS COMMAND.COM
processor, and save a write-protected copy for your library. With the
DOS system prompt showing the drive these two files are now on, run the
kernel CMFILER.COM by entering "cmfiler" or "CMFILER". The DOS command
processor will load and execute CMFILER.COM, which in turn will find and
load the overlay CMFILER.OVY. The whole 101 KB (19+82) is now residing
in memory, ready to respond to commands.
The first thing you will likely see is a request for monitor
information. CMFiler cannot distinguish between a color monitor and an
LCD monitor, and the default color set for the color monitor is a poor
choice for LCD monitors. When you see the message, press C, M, L or T
(some Tandy LCD's employ a backwards convention on the high intensity
attribute, and thus a separate color set has been dedicated to them). As
soon as you press one of these letters, you will see disk activity.
CMFiler is creating a file of user configuration data (called
CMFILER.CFG) in the same directory the .COM file is in. It will update
this file as you select other setup options.
_____
Rename CMFILER to Spare My Fingers. . .
Now, feel free to rename CMFILER.COM to "CF.COM" for short, and the
overlay and configuration files from CMFILER.OVY and CMFILER.CFG to
"CF.OVY" and "CF.CFG". (It is important to keep all these files named
THE SAME, by the way.) In fact I will refer to them simply as "CF" from
here on, since that results in fewer keystrokes for me! Put the cursor
on the line reading "CMFILER COM" and press the letter R (for "rename").
A window will open up at the bottom that says:
Rename CMFILER.COM
to >CMFILER.COM<
with the cursor blinking on the first position in the data entry field
denoted by the "> <" pair. (CMFiler is assuming that you want to rename
just the CMFILER.COM file, since the most frequent use of the rename
facility is renaming single files; and is offering you the same name as
the "default" entry in the new name field, since often when you rename a
file, you may be only changing a few characters.)
In this case we want to rename all the files that start with
"CMFILER"; that is, we would really like to use the DOS "wild card"
convention "*". If we were renaming this family of files from the DOS
prompt, we would type in the command "ren cmfiler.* cf.*". In the
CMFiler rename facility, the upper line is the first parameter of the DOS
rename command, the lower line the second. We therefore want the upper
line to read "CMFILER.*". To do this, press either the up arrow or PgUp,
and press Tab to move over to the "C" in "COM". Type "*" and press Enter
or down arrow. Now the window reads:
Rename CMFILER.*
to >CMFILER.* <
Simply type "CF.*" and press Enter. The files are now renamed.
This quick exercise sounded complicated when you read it, but won't
be when you try it. And it illustrates a few "nice touches" I have tried
to build in to minimize your keystrokes.
From here on the explanations are not so detailed. I recommend you
fiddle with scratch disks initially, until you are familiar with all of
CF's capabilities. If you are running DOS Version 2, put CF, both the
.COM and .OVY files, on one of the paths defined in a DOS "path" command,
so that it can "find" itself after running other applications. This is
not necessary under DOS Version 3 and later.
_____
The Screen. . .
You should by now have noted an economy of screen usage. The left
panel shows the contents of the root directory on the default drive.
Line 1 of this active panel shows the disk volume name if any, and a
prompt area for four display enhancement features: the key combination
Ctrl-O (denoted by ^O to save space) allows selection of one of seven
file Ordering schemes; ^H toggles the "Hide" mode switch; ^C toggles the
"Compare" mode switch; and ^M allows specifying a file "Mask". Line 2
shows the path to the current directory, whose first 20 entries are
CMFiler -- Chapter 1 1-2
displayed in lines 3-22. Line 23 gives vital information about the disk,
such as room left, and lines 24-25 contain an abbreviated help screen.
The thick versus thin sections of the vertical line to the left of
the file list denote the relative position and size of the current screen
display within the full directory listing.
If you do not press a key within about 1-½ minutes, the screen
goes into screen-saver mode. Just press any key to return to the main
display. You may force the screen-Saver mode with Ctrl-S.
_____
The Help Area. . .
The two-line help area at the bottom of the screen contains a set of
abbreviated cues to assist with the recollection of the mnemonic single-
key commands. With no "modifier" keys pressed [i.e., the Shift-, Alt-
and Ctrl- keys all up], the help area shows the operations available with
the unmodified keys, with the mnemonic code highlighted. These are
typically the most frequently used operations; the letter C for "Copy
file(s), E for "Edit file", D for "Delete file or directory", T for "Tag
file", the number 1 for "toggle the file Read-only attribute", and so
forth.
Additional commands are available which use similar mnemonic
devices, but with the keyboard modified by Shift-, Alt- or Ctrl-. Press
one of the Shift- keys, and notice the change in the bottom lines. These
are the commands enabled by the letters shown in highlight, modified by
the key you are holding down. Press Ctrl- and Alt- in turn. All these
operations, both "unmodified" and "modified", will be explained as we go
along. Just be aware that the visual cues for the modifier keys are there
when you want them.
_____
More on the "Modifier Keys". . .
Incidentally, there is some rationale for which of the Shift-, Alt-
or Ctrl- keys was used as the modifier for a particular "modified"
operation, and there are some devices which may help you remember the
modified keys as well as the more straightforward mnemonic devices of the
unmodified keys:
o The modifier "Shift-" is often used for operations involving
transfers of control or data to or from the other panel. For example,
Shift-Enter, when the cursor is on a subdirectory entry, means display
this subdirectory in the other panel and jump across to it. Other
commands which follow this convention, and which you will encounter in
more detail, are Shift-Left/Rt Arrow, Shift-P, Shift-*, Shift-\, and
Shift-F.
CMFiler -- Chapter 1 1-3
o The modifier "Ctrl-" is most often used to "toggle" the state of
a "switch" or "tags" -- that is, to invert something. For example, Ctrl-
H toggles the state of the "hide switch" , i.e., if Y ("yes" or "on") it
goes to N ("no" or "off"), if N it goes to Y. Other examples include
Ctrl-O, Ctrl-M, Ctrl-C, Ctrl-A, and Ctrl-L.
o The modifier "Alt-" is most often used just to indicate an
operation associated with a mnemonic alphabet key, but for which the
unmodified key was already in use as a mnemonic for a more frequent
operation. For example, C means "Copy", and is one of the most frequent
operations; Alt-C means "add file spec to Command tail", and is used far
less frequently. (In the editor, Alt-modified keys are used a LOT, since
the unmodified keys are used for typing text!)
_____
Two Panels. . .
Each of two "panels" corresponds to a "path" to files, in the DOS
vernacular. Open the right panel by pressing the right arrow. You will
be prompted at the bottom of the screen to specifiy a drive letter.
(Lines 24-25 become the "dialog" area for information to you about
what CF is doing, or what it is waiting for you to do.) Just press
the letter corresponding to a valid drive -- don't press Enter, just a
letter key. The root directory of that drive will be shown in the
right panel in the same format as the left panel. The bright yellow
color of the path specification on line 2 and the blinking cursor now
identify the right panel as the "source" path. The left panel has
become the "target" or "destination" path for copy and append
operations.
Whenever CF is in "compare" mode and the cursor is on the name of a
file in the source panel that also happens to exist anywhere in the
target path, the target panel display is adjusted so that the file
appears in the panel, and its date/time signature is put in high-
intensity to catch your eye and show you the duplication. If the date,
time and size of the two files are not the same, the date/time signature
of the NEWER file will blink. You can toggle compare mode off and on
with the key combination Ctrl-C (the mnemonic is "compare").
_____
Color Palette. . .
For display in CGA/EGA/VGA systems, CF has four choices of color
palettes. The command Ctrl-P (for Palette) lets you cycle through the
choices with the Spacebar, and select a different color scheme with Enter
or return to the original one with Esc. The choice is permanently
recorded in the .CFG file (discussed in more detail later).
CMFiler -- Chapter 1 1-4
_____
Alphabetic Case Options. . .
CF also has four options for the alphabetic cases used in the panel
displays. The command Ctrl-E (for casE) lets you cycle through the
choices with the spacebar, as in the Palette above, which are: 1) files
and directories all upper case, 2) directories in upper case, file in
lower, 3) all in lower case, and 4) all in "modified-Tauck" convention,
where all letters are lower case except the first and any that follows a
non-alphabetic character (eg, Cmfiler.Com or Read-Me.1St). I have found
this last convention by far the easiest to read.
_____
Cursor Movement. . .
Shift back and forth with the left and right arrow keys. You are in
effect switching source and target paths. Use the up/down arrows,
PgUp/PgDn, Home and End keys to move the cursor within a panel.
PgUp moves the cursor to the top of the panel if it was not already
there, and then moves up 19 lines in the directory. PgDn is similar
for the opposite direction. Home goes to the first line of the
directory, End to the last.
The command G (for "Go to...") lets you type in a file name to move
the cursor to within the directory listing. As you type, the cursor is
repositioned to the first file described by the character string you are
building. When you have come to the file you want, press Enter or Esc.
Alt-G is the equivalent "Go to. . ." for subdirectories.
In "Compare mode", whenever there is a duplicate file name
highlighted in the opposite panel, you may jump directly across to it
with the move Shift-Lf/Rt Arr, vice the unmodified arrows.
_____
Switching Drives or Disks. . .
CF cannot tell when you have changed disks in the drive whose
contents are shown on one of the screen panels. You have to tell it by
putting the cursor in that panel and pressing Shift-R (for "Refresh") or
N (for "New drive") and the letter designator for that drive at the
ensuing prompt. If you want to switch drives, say from A to B for the
right-hand panel, put the cursor to the right, press N and B.
Sometimes when you are doing single-panel operations, like
constructing a note set or editing files, it is a distraction to have
both screen panels open at once. To close the right-hand panel and
return to single left-hand panel display, put the cursor in the right-
hand panel and press N and Enter.
CMFiler -- Chapter 1 1-5
_____
Subdirectories. . .
Make a new subdirectory in the source path by pressing M (for the
DOS command "Mkdir") and entering a name. Find it in the display in
alphabetical order, move the cursor to it and press Enter. Note the new
path on line 2 of the screen display, and only the "<Parent>" entry in
the file listing. Go back to the parent directory by pressing Enter with
the cursor on the "<Parent>" entry, or P with the cursor anywhere in the
panel. You can navigate down and back up through the directory levels in
a path this way, one level at a time. If you are several levels deep,
there is another quicker way back to the root directory than by hitting P
repeatedly, and that is the backslash key \. It works like the DOS
command "cd \".
To put a subdirectory from the current source panel list into the
target panel, put the cursor on its name and press Shift-Enter. The
subdirectory is listed in the opposite panel, and the cursor shifts over
to it. In similar fashion, Shift-P puts the source panel's parent
directory into the opposite panel, and Shift-\ puts the source's root
into the opposite panel. Finally, Shift-* puts the source directory
itself into the target. This is handy for quickly setting up the same
panels side-by-side for ZIPping/unZIPping, discussed in Chapter 4.
Remove a subdirectory by placing the cursor on it and pressing D
(for "Delete", which I use interchangeably for file deletion and
subdirectory removal). Note that the subdirectory has to be empty first
-- a DOS safeguard.
_____
Copy Some Files, then Do It with Tags. . .
Put the cursor on a file name and press the letter C. This copies
the file from the source to the target path. "Tag" several files with
the letter T or the Spacebar. Now press C to copy this group from source
to target. Clear all the tags with A (tag/untag All). Press A again,
and see that all the files are now tagged. Untag an individual file with
T. ("T" actually toggles the state of an internal tag bit assigned to
each file and used for temporary marking purposes only. "A" clears all
the tags if any were set, or sets all the tags if all were clear. No
information is changed on the disk itself. These are "volatile" tags,
maintained only until the directory is re-read for some reason, such as a
file deletion or a copy operation into the directory.)
CF looks first at the space available on the target path before
it starts to copy. If it doesn't see enough room free, it doesn't start
the operation, and alerts you to this limitation. This prevents write
errors, messed up file allocation tables and incomplete files that can
result when space runs out during a copy operation.
CMFiler -- Chapter 1 1-6
CF has several special features in the copy operation:
o If an identical file exists in the target path -- same name,
extension, date, time AND size -- CF does not normally copy the source to
the target, as this would be wasted motion, on the assumption that the
files are identical. This "no overcopy" feature is controlled by one of
seven switches which may be toggled in the user setup menu brought up
with the command Shift-O (for " user Options"). It is sometimes useful
to change its state.
o If a file by the same name but newer date/time is found
on the target, CF will ask you specifically to verify that you really
do want the newer file overwritten.
o If the source file has length 0 bytes, or if the source and
target files have the same date/time but the source is smaller, CF will
ask for overwrite confirmation. This provides some protection against
overwriting a good file with one which has become corrupted by a previous
copy error.
o If a file by the same name but with the read-only
attribute set is found on the target, CF will ask you to verify that you
want it overwritten. (Likewise if the target file is hidden and the hide
switch is on.)
_____
Tagging, Backing Up. . .
With a couple of files tagged, look at the line just below the
last line of the directory listing. You will see the space in use in the
current directory ("KB Used"), the amount of disk space occupied by any
tagged files ("Tagd") and the space still free ("Free"). Also, in the
line below will appear after each tagging operation the current number of
files tagged. Disk space is expressed in kilobytes, in integer multiples
of the disk media cluster size, so what you see is the amount of space
ACTUALLY tied up on the disk. (If your disk is a 5.25" DSDD floppy its
clusters are probably one KB each. Every file takes up at least one
cluster, so a 1-byte file takes up a one KB of disk space, the same as a
1024-byte file.)
Assuming the amount of space represented by tagged files is less
than or equal to space available, press B to back up all the tagged
files. CF's convention for assigning backup file names in this operation
is to reuse the fiorst two letters of the extension (filling blanks with
exclamation points), and then make the last letter of the extension a
tilde character (~). Thus the backup should always immediately follow
the primary file in any alphabetical listing.
CMFiler -- Chapter 1 1-7
_____
Moving Files. . .
With the panels selected to different subdirectories on the same
disk, one or more files may be "moved" from one subdirectory to the
other. This operation does not read and write the file data clusters,
but only changes the subdirectory table entries, so large files may be
moved around quickly. Tag files if desired, as with Copy, and press the
move command Shift-C (instead of C -- think of moving as just another
kind of "copying", but you are "shifting" files to a different directory
instead).
If the conditions are not satisfied for moving the files (e.g. the
directories are not on the same disk), CF will copy the files to the
target path, but will not delete the tagged files in the source. You may
delete the tagged files with two more keystrokes if you wish, but CMFiler
does not assume this is what you meant. This encumberance is deliberate;
because CMFiler is so fast, I have made it require confirmation whenever
any file destruction is requested.
_____
Deleting a File. . .
With the cursor on a file and no files tagged, pressing D results in
deleting the file under the cursor, after confirmation. If one or more
files are tagged, they will be deleted after confirmation, not the file
under the cursor. Alt-Tags, discussed below, are treated the same as
normal tags as far as the delete operation is concerned.
On hard disks, the default configuration of CF actually performs
what I will call a "soft" delete for this operation. The files are not
deleted using the DOS delete function, but rather are redated to the
current date and time, and moved into a directory created by CF, called
"CF_TRASH.CAN". If you delete files from your hard disk by mistake, they
are RELIABLY recoverable just by switching to the CF_TRASH.CAN directory
and moving them back to the directories they came from using Shift-C.
If you delete a second file by the same name as a file already
collected in the CF_TRASH.CAN directory by a previous soft delete
operation, CF tries to rename this second file by replacing the last
character in the extension with a "1". If this name is already in use,
it tries to rename with a "2" instead, then a "3", and so on, through
"9". Thus, you are assured under all reasonable circumstances of not
losing any deleted files, even duplicates. The only problem is that you
may have trouble telling which duplicate is the original, as CF redates
each of them during the "soft" delete.
Each time you select a new drive in the main module, CF looks to see
if it is a hard drive (A and B are always taken to be floppies), creates
CMFiler -- Chapter 1 1-8
the directory CF_TRASH.CAN if it is not already present, and then looks
in CF_TRASH.CAN for the presence of files with any date earlier than the
current date. If it finds any, it will ask you if you want to purge them
-- that is, perform the "hard" DOS file delete on yesterday's trash. You
have the options "yes", "no", or "Enter to view" to see what is in the
thash can. You probably want to keep the CF_TRASH.CAN as uncluttered as
possible, just to avoid tying up disk space needlessly. If you prefer to
"empty the trash" less often than daily, be prepared to be pestered with
the same question the first time you select that disk each day! (The D
command always performs a "hard" delete in the CF_TRASH.CAN directory --
this is the one exception.)
This "soft" delete facility is NOT intended as a means of backing up
files, but rather is built in SOLELY for the purpose of RELIABLE recovery
from inadvertent file deletion.
An additional delete option is available -- Ctrl-D, or "hard"
delete. This operation performs the DOS delete always, regardless of the
type disk selected. Use it when you KNOW you will not want to recover
the deleted files.
And if you are REALLY sure of yourself, you can turn D from soft
delete to hard delete. There is a switch available for this purpose in
the Shift-O user Options menu mentioned above.
_____
The Tagging Convention Expounded on. . .
For all the above commands (copy, delete, move, back up), the
operation is performed on ALL THE TAGGED FILES in the source panel, if
ANY are tagged, and only on the file at the cursor if NONE are tagged.
Some file managers offer different commands for "copy tagged" and "copy
file at cursor", and so forth. I have always found this unnecessarily
complicated. For the FEW occasions in which you have a bunch of files
tagged to do one of these operations (say you want to copy them), and you
discover just before you start that you really wanted to do some other
operation on just one of them first (say you realize one of them is out-
of-date and you want to delete it), you will have to either untag them
all with A, do the operation on the one file, then retag and do the
original operation; OR just postpone the one-file operation. For this
example, it is easier just to toggle the tag on the one out-of-date file
off with T, copy the other bunch, clear the tags, and delete the one. It
becomes just a matter of a little thought about the order in which you do
things.
The "view" operation (discussed in Chapter 2) does NOT clear
existing tags. So, suppose you are cleaning up a disk, tagging files
that you recognize by name as no longer needed in preparation for a
single, massive delete, and you come to one you aren't sure about. Put
the cursor on it, press Enter (the "view" command), browse through it and
CMFiler -- Chapter 1 1-9
decide if it's a keeper, and Esc from view mode. Note the previously
placed tags are still there, and the cursor is still on the mystery file
waiting for you to decide whether or not to tag it.
_____
Renaming a File OR a Directory. . .
Since we'e already done this, I'll just briefly say that it works
for directories, too. A word about the wild card character "*". In the
earlier exercise, we used it in the first window to declare that we
wanted to rename all the files with "CMFILER" as the name, and any
extension, to "CF" with the same extension. You may use the "*" in the
name field of the first window instead of the extension, but not in both.
Used in the name field, it means "change this extension, wherever it
appears, to this other extension". This option is less useful.
If used in the first data window, the "*" MUST also be used in the
second window in the same position. CF always senses the use of "*" in
the first window, and seeds the second window with this character in the
right position.
The "*" may be used in the second window, even if not in the first,
as a shorthand for "keep the same name (extension)". For example, if you
wanted to rename just "CMFILER.DOC" to CF.DOC", put the cursor on
"CMFILER DOC" in the source panel, press R, type "CF.*" in the lower
window, and Enter. Saves some keystrokes. This is a wild card
convention taken from DOS. (Sorry to you DOS heavies -- for simplicity I
chose not to complicate things by including "?" in the wild card library
for this facility!)
_____
Some Additional Tagging Options. . .
In addition to T (which toggles the state of an individual file's
"normal" Tag) and A (which clears or sets All tags), there are some more
tagging operations. Alt-T applies an "append tag", discussed later.
Alt-M tags all the files in the panel with the same naMe as the file
under the cursor, Alt-E same Extension. Alt-D tags all files in the
panel with the same Date as the file at the cursor, Alt-N tags all files
Newer, and Alt-O Older. Alt-P tags in the oPposite panel all the files
with the same names as files tagged in the source panel. (This is good
for updating to a floppy only the files which were already on it.) And
finally, Ctrl-A toggles the state of All tags in the panel.
If, for example, you wanted to copy all .COM files, put the cursor
on any .COM file, press Alt-E, and C. Or suppose that, at the end of the
day, you wanted to copy/update all the files written or revised today.
Just put the cursor on any file with today's date and press Alt-D and C.
Then suppose you wanted to delete all the earlier files. Press A to clear
CMFiler -- Chapter 1 1-10
the tags, Ctrl-O and D, and confirm the deletion as requested, after a
final check of the screen.
_____
Copy with Rename. . .
You may copy a file and rename it in one operation. Only one file
at a time may be copied in this way. The command is Alt-R (copy with
Rename). It operates only on the file at the cursor.
_____
The File "Freshener". . .
Suppose you have a floppy disk with backups for some of the files in
a hard disk directory, and you want to freshen them periodically. With
either panel set up with the primary directory whose files you are
backing up, put the backup floppy in a floppy drive, arrow across to the
other panel and press N and the drive letter to bring up its root
directory (now in the source panel), and then just press Shift-F (for
Freshen). CF tags all the backup files in the source panel if none were
already tagged, or leaves existing tags as-is if some were tagged; then
tags all the files in the opposite panel with the same name as tagged
files in the source but which are NEWER; then copies these to the source;
and finally updates the source panel display, leaving the primary
directory in the target panel display tagged to show you what was copied.
Just four key strokes! No excuses ever again for not backing up files.
_____
Different Ways to Show the Files. . .
Ctrl-O (for "Order") sets a screen which gives seven choices for
file ordering, with the cursor blinking on the current selection. Press
a number key 1 through 9. The files will now be reordered in the new
scheme. The options for ordering by date/time are particularly useful in
the visual sense when backing up just the files revised today, as in the
example above.
_____
The Data Entry Window. . .
The data entry window you encountered in the renaming exercise
responds to most of the usual line-editing key presses:
o Insert toggles the mode between Typeover and Insert. The mode
stays set for each subsequent entry. In Typeover mode, any
default entry is cleared if the first keystroke is an
alphanumeric character.
CMFiler -- Chapter 1 1-11
o Ctrl-Lf/Rt Arrow and Tab/Shift-Tab go right or left to the space
following the next blank or punctuation mark.
o Shift-Lf/Rt Arrow go to beginning or end of data field. Home
goes to the beginning of the field.
o Lf/Rt Arr, Bksp and Del perform the usual functions.
o End goes to the blank after the last non-blank character.
o Alt-Keypad permits entry of any ASCII code as a decimal number.
Hold down the Alt--key while you type in a number from 1 to
255 on the numeric keypad. When you lift the Alt--key, the
IBM symbol for that ASSCII code will appear in the window, and
the cursor will advance a space.
o Ctrl-D deletes to the end of the line.
o Esc aborts the operation.
o Down Arrow is equivalent to Enter. In some cases, Up Arrow moves
up a line. (The rename facility in the main module and the
"replace string" facility in the editor use this convention.)
For entering file names and subdirectories, all letter keys are
registered as upper case, regardless of Caps Lock or Shift-key positions,
just for the sake of uniformity and ease of alphabetizing. For command
lines parameters, which may be case-sensitive, both cases are enabled.
_____
Disk Space Occupied versus Actual File Size. . .
Now take a look at the file listing. You see the name of the
file, date, time and size in KB. As with the disk space information
just below the file list display, size is in integer multiples of
clusters occupied. If you want to see exactly how big a file is, in
bytes, press "+" to expand the size field. (I had to give away the
file time to do this and still keep the two panels readable.) Shift
back to the "contracted" kilobyte form of file size with "-".
_____
File Attributes. . .
Also in the file list, to the far right in each panel, you will
probably see A's. This means that the DOS "Archive" attribute bit is
set in the file attribute byte. DOS sets this bit everytime it
operates on a file. CF lets you operate on this bit and the other
bits in the DOS file attribute byte -- "Read-only", "Hidden", and
"System". Before doing this exercise, look at the top line of the
CMFiler -- Chapter 1 1-12
display. If you see "^Hide=N", that means that files with the DOS
"Hidden" attribute set will be displayed anyway -- i. e., the CF "Hide
switch" is off. Chances are you will see "Y" instead of "N", meaning
that the Hide switch is on -- the default setting. In this setting,
files will disappear from view as you set the DOS hidden attribute, so we
need to toggle the hide switch to "N". Press Ctrl-H to toggle the hide
switch off.
Either tag one or more files, or position the cursor on the file
whose attribute(s) you want to set, and press 1 to toggle the state of
the Read Only attribute, 2 to toggle the Hidden attribute, 3 to toggle
the System file attribute, 4 to toggle the Archive attribute, or 0 (zero)
to clear all attributes. You may also toggle the hide attribute (with 2)
of a subdirectory, but this must be done one subdirectory at a time.
Note that "hiding" a file makes it invisible to CF only when the hide
switch is set on, as shown in the top line. Toggle this hide mode off and
on with the combination Ctrl-H (discussed further below). Decide for
yourself which mode you prefer. Some people like to hide the "overhead"
files and directories on their disks, and leave the hide switch on as the
default setting to "clean up" the display.
_____
Changing the Date/Time Stamp of a File. . .
You may change the date and/or time of a file by putting the cursor
on it and pressing Alt-F. A data window opens for you to first enter the
new date, using the current date in the file's date/time stamp as the
default, and then the time. This operation is not permitted on Read-only
files.
_____
"Alt-Tagging" and Appending. . .
Suppose you have two files that you want to stick together as
one, heel-to-toe. Tag them with "append" tags with the key combination
Alt-T or Alt-Space in the order in which you want them to be
concatenated, and press C. CF will offer you a filename for the new
concatenated file consisting of the name of the first file Alt-Tagged
plus the extension ".APF" (for APpended File). You may edit or accept
that name as given. Then it creates this file in the target path and
appends into this file each of the Alt-Tagged source files in order. You
may concatenate up to 35 files at a time this way. The order in which
the file was Alt-Tagged is shown in the character that appears to the
left of the file name as it is tagged (1-9, then a-z). If you had
pressed B instead of C after affixing the Alt-Tags, the concatenated file
would have been written as a backup into the source path instead of the
target.
CMFiler -- Chapter 1 1-13
_____
Printing a File. . .
You can print a file to the parallel printer just by putting the
cursor on the file and pressing L (print fiLe). The file will be put
into a special print "queue" for printing to line printer 1 on the
parallel port as a background process while you are doing other things,
like editing another file, updating disks, etc. Up to five files may be
put in the print queue, which may be viewed with Shift-L.
At times the printer may halt momentarily during disk operations.
CF gives preference to disk operations over printing, to avoid any
conflict in time-critical operations. You may terminate printing with
Ctrl-L. This actually clears the entire print queue. To force a form
feed at the end of the file you have just queued, press Ctrl-F before you
queue the next file. CF sets an internal flag to check that the last
character sent to the printer from that file is a form feed. If it is
not, then it sends one. (Ctrl-F is active when no file is printing,
also, as a way of form-feeding the printer from the keyboard.)
_____
Making Some Notes About Your Files. . .
If you are like me, you sometimes forget what a program with a
strange name does, or what a particular data file is. CF lets you write
notes to yourself about any file. Press Ctrl-N and a Notepad opens up in
the opposite panel for editing. You can type a little narrative for each
file or subdirectory in the directory. The editing keys work much the
same as in the line editor, except that you are limited to 39 characters
for each entry. Each time you call up the notepad, it appears as it did
the last time you edited it. You may just browse with the up/down
arrows, PgUp/Dn, Home/End, edit or add, etc. Leave the notepad with Esc
or Ctrl-Enter. If you use Esc and did any editing, you will be asked if
you want to save that edit of the notes.
From the "edit Notes" screen you may also view or edit the file
opposite the note without leaving the edit Notes environment, just by
pressing Alt-V or Alt-E. You may also attach a normal tag to the file
with Ctrl-T or Ctrl-Space ("T" and "Space" are not available, since the
notes editor would take it to be text), or an append tag with Alt-T or
Alt-Space.
A "view Notes" command Shift-N simply replaces the target panel
display with the notes for the source panel, but all the file and
directory service commands, including the source-to-target commands such
as Copy and Shift-C move, are still active.
The notepad is contained in a hidden file call "NARATIVE.CF", and
notes follow the file when it is copied or moved to another path or
CMFiler -- Chapter 1 1-14
renamed. If you delete a file, its notes will be lost the next time you
call up the notepad. You may make the NARATIVE.CF file unhidden with one
of the user Options in the Shift-O menu.
If you are a 4DOS/NDOS user and you already have notes written about
your files and directories in this convention, you may convert the
DESCRIPT.ION files to the CF note file format NARATIVE.CF using the
program DESC2NAR.COM provided in the CMFiler file set. This program does
not alter any DESCRIPT.ION files, and retains the notes already in any
existing NARATIVE.CF files. Read the separate documentation in
DESC2NAR.DOC file.
_____
Printing a Directory Listing. . .
Press Alt-L to send a directory Listing to the line printer. If you
do this from either of the Notes displays, you also get a listing of the
notes, and the file size entries is either the abbreviated or full value,
depending on the display mode set in the directory table (toggled with +
and -).
_____
Comparison Mode. . .
At the top of the screen you see a message "^Comp=Y". The "Y" means
"yes", the compare "switch" is enabled, so that any file in the target
panel whose name is the same as the file in the source panel will be
shown and its date-time stamp highlighted for easy identification. If
the files have different date-time, the newer version will be blinking.
You may toggle this switch with the key combination Ctrl-C.
In comparison mode there is a useful feature which enables you to
get quickly to a file with the same name in the opposite panel. In
arrowing back and forth between panels in comparison mode, with some
files by the same name in each panel, you probably noticed that the
target panel shifted as necessary to bring the duplicate name into view,
but as soon as you shifted over to the target panel, it "remebered" and
adjusted the display back to where the top line and cursor had been left,
and you lost the duplicate file from view. But suppose you had seen a
more recent file in the target panel, as evidenced by the blinking
highlight, and you REALLY wanted immediately to arrow over to it and copy
it into the source. The Shift-Left/Rt Arrow combination does this. It
resets the target panel display parameters so the cursor goes right to
the matched file name.
CMFiler -- Chapter 1 1-15
_____
Hide Mode. . .
Also at the top is the message "^Hide=Y". This means that hide mode
is enabled -- the screen display will not show any "hidden" files --
those with the hidden attribute set. This is handy for cleaning up your
displays -- just hide the overhead! You may toggle the state of this
switch with the key combination Ctrl-H. The current state of these two
switches is set as the default any time you do a Shift-F10 edit,
discussed in Chapter 4 on application launching.
_____
Mask Template. . .
Also at the top is the message "^Mask=*.*". This is a mask that
lets you sift out all but files with a certain characteristic. For
example, if you want to see only the .EXE files, press Ctrl-M, Tab, type
"EXE", and Enter. Tab and Shift-Tab position the cursor on the extension
and name fields, respectively. The left and right panel masks are
independent.
_____
Displaying System Date and Time. . .
The display of system date and time may be toggled on or off with
the "5" key (sorry, no mnemonic). Its state is saved in the
configuration file with Shift-S.
_____
Changing or Adding a Volume Label. . .
Press V and a data window opens at the bottom for you to enter a new
volume name for your disk. The existing volume label is offered as a
default for editing ease.
_____
Some Safeguards. . .
As noted above, you can't remove a directory unless it is void of
files. This is a built-in DOS safeguard that CF passes along to you,
since it uses the DOS file handling services. In addition, CF asks you
to verify any requested delete operation; any requested copy operation
that would overwrite a file of the same name but newer date/time in the
target path, a read-only file, or a hidden file with the hide switch on.
In addition, if you attempt to copy or move any files out of the
CMFiler -- Chapter 1 1-16
CF_TRASH.CAN directory, you will be asked to confirm that you REALLY want
to do that. This precaution is taken because, when files are put in the
"trash can" by a delete operation, their date/time stamp is changed to be
the date and time they were DELETED. Therefore it is probable that files
in the trash can will appear to be NEWER than identically named files in
other parts of the disk. For this reason, files should only be moved or
copied out of CF_TRASH.CAN with GREAT CAUTION, lest they overwrite files
that are actually more up-to-date.
_____
Saving User Setup Options. . .
You have already read about three cases in which features can be
reset from their default (or "as-delivered") condition using a special
user Option menu summoned by Shift-O. The "soft" delete can be redefined
as a "hard" delete, the NARATIVE.CF notes file can be redefined as not
hidden, and the identical-file overcopy switch may be set on or off.
There are seven such features, total, available for setting to your
specifications. When you visit this menu and then leave by pressing
Enter, the configuration file CF.CFG is updated so that these switches
settings are remembered the next time you run CF. The nature of these
seven switches is such that you probably will not change them often.
They represent your preferences as to a standard configuration of
features.
When you press Shift-O, you will see the following menu:
--------------------------------------------------------------------
Move cursor with Up/Dn Arrow. Type option desired.
Define F1 as Help? N
Define "D" as HARD Delete? N
Clear I/O buffers if located? N
Overcopy files with same date/time/size? N
Refresh directory contents after Screen Saver? N
Assign Hidden attr to NARATIVE.CF file? N
Assign Read-Only attr to NARATIVE.CF file? N
Turn Screen Saver off? N
Monitor (C=Color, L=LCD, T=Tandy LCD, M=Mono) C
Press Esc to cancel changes, Enter to accept.
--------------------------------------------------------------------
These nine "switches" represent setup features that various users
have asked for. The default settings are all N ("No"). Any setting may
be toggled between Y and N by putting the cursor on it using the Up/Dn
Arr keys, and pressing the spacebar. When you have reconfigured the way
you wish, press Enter. Esc exits with no changes. Here is an
explanation of each feature:
CMFiler -- Chapter 1 1-17
1. In keeping with the convention most often used, the F1 key
is assigned as a "Help" call in the editor and tree modules, and can be
so assigned in the main module by resetting this switch to Y. The
sacrifice is loss of F1 as a user-defined application.
2. For those who do not wish to use the "soft" delete feature
nor be bothered with the directory "CF_TRASH.CAN", the D key may be
reconfigured to "HARD Delete", identical to Ctrl-D by resetting this
switch to Y. (Discussed above.)
3. The I/O buffer clearing feature for data security during
file writing operations runs into problems on some system configurations
with DR DOS 6.0 as the operating system. It has been set to a default
mode that does NOT clear buffers before writing. If you want to invoke
this security feature, you have to reset this switch to Y. This feature
appears to work satisfactorily in all versions of MS-DOS, but DO NOT
invoke it under DR DOS.
4. In the default setting, CF does not waste time during file
copy operations overcopying any file in the target path that are reported
by DOS to be the same date/time and size as a file in the source path.
However, sometimes you might want to mass-overwrite files on a backup
directory or disk that are suspect, even though they may appear to be
identical. Just set the Overwrite switch to Y.
5. For Windows users, if you run CF in a window, it does not
have any way of knowing when it returns from the background to the
foreground whether any other application has written to the directories
that it is selected to. In the default setting, it does not refresh the
file listing (reread the directory tables). Windows users may want to
reset this switch to Y.
6. and 7. The NARATIVE.CF file, created in each directory as
necessary to contain file and subdirectory notes, may be assigned the
Hidden and/or Read-Only file attributes for neatness of directory display
and/or protection from inadvertent deletion.
8. The automatic screen saver may be turned off if desired,
to give the sole screen-saving function to your favorite resident screen
saver.
9. Finally, the color attribute set may be changed by
pressing C, L, T or M. If, for example, your system has a color card
driving a green-screen monochrome monitor, you probably would be more
satisfied with the monochrome color set invoked by M than the default
color set C.
There are other features of CF, particularly in the display options,
which you may reset lots of times in process, but which don't need to be
recorded permanently each time you change one. For example, I leave the
CMFiler -- Chapter 1 1-18
file ordering scheme set at the default value of "1" (straight
alphabetical), but sometimes I want to look at files in the order I last
modified them. I will temporarily reorder using the Ctrl-O command, but
I still want CF to come up with ordering scheme "1" next time I run it.
Conversely, the default setting for the "Hide" switch is "Y" (since
that's what most users wanted), but I prefer to see everything, so I want
it permanently set to "N" (for No, don't hide files with the hidden
attribute).
These values are savable. The other in-process option features that
are savable are the Compare mode switch, the resident Kernel size, and
the date/time display on or off. They are saved 1) whenever the Shift-O
setup Option menu is exited with Enter, 2) whenever the Shift-F10 user-
defined application menu (discussed in Chapter 4) is exited with Ctrl-
Enter, or 3) by pressing Shift-S (for Save options).
_____
Help. . .
In addition to the two-line mini-help area at the bottom of the
screen, a three-page summary may be summoned on-line at any time in the
main module of CF by pressing H. PgUp and PgDn page through the help,
and Esc exits back to the main screen.
_____
Command Line Parameters. . .
CF supports optional command line parameters to specify the initial
path for the left panel, right panel, file mask and color set, in the
syntax:
cf [pathspec1[\mask] [pathspec2]] [@color]
where pathspec1 and pathspec2 are directory specifications to the initial
directories to be displayed in the left and right panels, mask is any
valid mask specification, and color is C, M, L or T for the CGA/EGA/VGA,
monochrome, LCD or Tandy LCD color attribute sets. The mask may be
attached to either pathspec or stand alone, but must be of the form
"*.ext". The color specification may appear anywhere. Examples of valid
command lines might be:
cf c:\assembly\*.asm c:\pcw @c
cmfiler c:dos @m
CF UTILS WP51\*.DOC
CMFILER @C *.EXE
CMFiler -- Chapter 1 1-19
_____
Quitting CF. . .
There are two commands for exiting CF; Esc-other key and Alt-Q. The
Esc-other key combination reestablishes the default drive and its current
directory as CF found them. The Alt-Q combination leaves the default
drive and its current directory as it appears in the source panel. In
either case, if you were printing a file, you will be asked if you really
want to quit, since the print spooler does not stay resident and quitting
will terminate file printing. You may answer N.
CMFiler -- Chapter 1 1-20
*******************************
* *
* CMFiler -- Version 5.35 *
* *
*******************************
TUTORIAL -- Chapter 2: File Viewing and Editing:
CF has a built-in line editor, which simplifies file viewing and
editing -- even .COM and .EXE files. Since it is part of the package,
there is no loading delay. It is ready when you are.
_____
Viewing a File. . .
Want to see what's in a file? Put the cursor over a file -- any
file will do; ASCII text, PC-Write, .COM, .EXE -- and press Enter. CF
loads the selected file in memory for viewing.
_____
Record Delimiters. . .
The default display mode for "record delimiters" [carriage return
(CR), line feed (LF), and the combinations CR+LF and LF+CR] is to show
their color values, which are cued in the legend at the bottom (blue=CR,
green=LF, cyan=CR+LF, magenta=LF+CR). In addition , the end of the file
is denoted with a red End-of-File (EOF) mark. Sometimes it is very useful
to know exactly what delimiter combination your word processors use, so
you can duplicate it when you edit with CF. You can toggle the colored
delimiter symbols off and on with Alt-Minus or the gray minus key. (This
is also covered in a help screen you can get by pressing Alt-H or F1.)
_____
Information Area. . .
The name of the file being viewed is shown in the lower left prompt
area. The lower right prompt area shows the ASCII value of the character
at the cursor (decimal and hex), the position of that character in the
file (starting with 1), the file record the cursor is in, and the
position of the cursor within the record (called "Column", which for a
long record is not necessarily the same as the screen column). This
information display may be toggled off and on with Alt-Plus or the gray
plus key.
_____
Line Wrapping. . .
The default display mode is line wrapping, where any record longer
than 80 characters is wrapped to the next screen line, so that all text
is visible. This mode can be toggled (see the Wr/NW at upper right for
current status) with Alt-W. In the NoWrap mode, each record longer than
80 characters simply extends off the screen to the right, but is
accessible for viewing by putting the cursor on it and [Ctrl- or Shift-]
Rt Arrow-ing (see below) to any place on the line.
_____
Cursor Movement. . .
The arrow keys, either on the cursor keypad or numeric keypad, move
the cursor one line up or down and one character left or right. Ctrl-
Left/Rt Arrow move left or right one word at a time, and Shift-Left/Rt
Arrow and Home/End move to the beginning or end of the line, as in
PCWrite.
PgDn/PgUp moves the display up or down 20 screen lines, and leaves
the cursor on the same video line. Ctrl-PgUp/PgDn moves the display by
200 screen lines (10 video pages) for fast paging through a file. Shift-
Up/Down Arrow moves to the top/bottom of the current page. Alt-B/E moves
to the Beginning/End of the file contents in memory.
For very LONG files, exceeding available memory, the editor loads
only as much as fits. When you get to the end of that section (i.e., the
current "file contents in memory" referred to above), the next operation
that asks for another page or line causes the editor to load in the next
section, remembering the file position of the start of the previous
section so it can backtrack if you want. (It actually loads the next
section with some overlap to the previous section, so that a little bit
of backtracking does not result in reloading the whole previous section.)
This "heel-and-toe" sequential loading is limited to 50 sections.
_____
Find a String. . .
Want to look for a particular word or string of characters? The
key combination Alt-F (for "Find") opens up a data window at the
bottom for you to enter a short string. After you press Enter, CF
will find the first appearance of the string from the current cusor
position, and put the cursor on it. Alt-X (for "neXt") finds the
next appearance, and can be used repeatedly until the string no longer
appears, which is signalled at the bottom of the screen. The search
process starts at the cursor location and goes, if necessary, to the end
of the current file contents in memory.
CMFiler -- Chapter 2 2-2
If the file is long and is being viewed by the editor module in
sections as discussed above, only the CURRENT section is available to the
Find operator. The search is case-insensitive.
_____
Leading and Trailing Blanks in the Data Window. . .
The data entry routine truncates leading and trailing blanks, but
blanks may be included as leading or trailing characters by enclosing the
string at either or both ends with quotes ("). Suppose, for example, you
wanted to find all of the appearances in a file of the word "mark", but
not "remark". Press Alt-F and, in the data entry window enter:
Find string: >" mark <. This works for the replace string
as well.
_____
Editing a File. . .
Exit view mode with either Esc or Enter. (Note that any tags in
the source panel are still there.) Now you are ready to edit! Position
the cursor over a file that you have an extra copy of somewhere, and
press E (for Edit, obviously!). CF again loads the selected file, but
this time with an internal "switch" set which tells the editor module to
support editing. (Or, in View mode, press Alt-S, for "Switch to edit".)
_____
Edit Mode Limitations. . .
CF permits edit mode only if the file fits all at once into
available memory, has fewer than 16,380 records, and (in NoWrap mode) has
no record longer than 8190 bytes. CF will revert to view mode if these
conditions are not all satisfied. If you have a lot of memory tied up in
resident programs or RAM disk/cache, then you may not be able to edit
extremely large files. Chances are, however, that this will never be a
practical limitation.
_____
Typeover vs Insert. . .
Look at the small reverse video box in the upper right corner of the
screen. "T/O" or "Ins", then CF is in edit mode. Toggle between
typeover (T/O) and insert (Ins) modes with the Insert key. Typing action
is just like any word processor. In typeover mode, the Bksp key does not
pull the text left. This is to avoid unintentionally shortening the file
when editing length-sensitive files, such as .COM and .EXE files.
CMFiler -- Chapter 2 2-3
_____
Editing a Line. . .
You operate on a line at a time, and the "normal" editing keys work
-- i.e. Bksp, Del, Tab, Shift-Tab, the unmodified and modified arrow keys
discussed above, and any ASCII-code keys. To create a new line, just
Shift-Arrow to the beginning or end of the current line, depending on
whether you want the new line above or below the current one, and hit
Enter. This inserts the default delimiter combination, CR+LF, into the
text to set up a new line void of text, but ready for you to start
typing. The combination Ctrl-Enter gives you a menu screen from which
you may select a different record delimiter. Join two lines by deleting
the record delimiter at the end of the first line to be joined. Delete a
line with Ctrl-Y ("Yank"). Delete from the cursor to the end of the line
with Ctrl-D. Delete a word and its associated whitespace with Ctrl-T.
_____
More on Record Delimiters. . .
On CGA/EGA/VGA monitors, the record delimiter appears as a single
colored "blank" character at the end of the line, whether it is actually
two characters (eg., CR+LF) or one (eg., LF). It may be deleted to join
two lines, but not over-struck -- it always pushes right, even when
you are in typeover mode. The red "End-of-File" (EOF) marker is not
actually part of your file, but rather is only a visual aid for you to
see where the text ends. When the cursor is on the EOF marker, the
"byte number" in the legend corresponds to the number of the next
character, if you were to type one. The EOF marker also always pushes
right, and cannot be deleted. The height of the cursor shows the
status of the "Caps Lock" switch.
_____
Alt- Keypad and Alt-N. . .
Any ASCII code from 1 through 255 can be entered from the numeric
keypad using the Alt- key modifier. A special combination is provided
for ASCII zero ("NULL"), since Alt-Zero is not recognized by any keyboard
drivers I have seen. It is Alt-N (for "Null").
_____
Block Operations. . .or the REAL Power of CF's Editor. . .
All the block operations -- there are six -- are keyed to Alt-key
combinations, and they are all intuitive (sort of). They are:
Alt-{ Mark, Yank (delete), moVe, Copy, Print and Output }.
CMFiler -- Chapter 2 2-4
_____
Marking a Block, and the Copy Buffer. . .
You may also manipulate blocks of records. First mark a block by
putting the cursor on the first (or last) record of the block you want
to do something with, press Alt-M (for "Mark"), move down (or up) with
arrows, PgDn/Up, etc., and mark the last (or first) record of the block,
again with Alt-M. The marked text is written into a copy buffer for
later use. If you made a mistake, a third press of Alt-M clears the
marks, but leaves the copy buffer intact. The contents of this copy
buffer REMAIN AVAILABLE FOR MULTIPLE USE UNTIL A NEW BLOCK IS MARKED.
You may exit the editor back to the main module, and edit another file,
and because the editor copy buffer is a dedicated chunk of RAM in the
main and editor modules, the buffer is still intact. Just copy it into
the next file with Alt-C.
When you are marking a block, note that the information box at the
bottom left of the screen expands to show you the attributes of the
marked block -- the number of the first and last records marked, and the
number of bytes in the painted area. There is an arbitrary 32 KB limit
on the copy buffer. The upper right-hand information box shows "Blk"
instead of "T/O" or "Ins", meaning that normal editing is not permitted
while you have a block marked.
_____
Delete, Copy, Move. . .
Delete the block with Alt-Y ("Yank"). Or put the cursor in an
unpainted area of the file, and copy the block into that area, just ahead
of the line where you put the cursor, by pressing Alt-C ("Copy"). Or
move it with Alt-V ("moVe"). As noted above, the block previously
"marked" into the copy buffer is available for multiple use. Just put
the cursor where you want the block to be copied and hit Alt-C again.
_____
Restoring from Inadvertent Block Deletion. . .
If you just deleted a block in error, put the cursor where you want
to restore it, and press Alt-C to copy the buffer back into the file.
_____
Sending a Block of Text to the Line Printer. . .
Print the copy buffer to line printer 1 (the parallel port) with
Alt-P ("Print"). After printing, if you want a form feed, press Ctrl-F
("Form feed" -- note the use of Ctrl- vice Alt- as the modifier key,
since Alt-F was already used for "Find").
CMFiler -- Chapter 2 2-5
. . .or to a File. . .
Finally, output the copy buffer to a file in the same path as the
file being edited by pressing Alt-O (letter "O" for "Output"). A
window opens at the bottom for typing the name of the file for CF to
create (if it doesn't already exist) or append to if it does. (The file
will be created or opened in the current directory on the default drive.
Therefore the characters ":" and "\" will not be recognized.)
_____
Replace and Global replace. . .
In addition to the Alt-F "find" feature, there is an Alt-R
"replace" and an Alt-G "global replace" feature. Just press Alt-R or
Alt-G and enter the find and replace strings when prompted. (If you see
a mistake in the find string while you are typing the replace string,
just arrow back up a line and reedit it.) For Alt-R, CF will find the
first match and ask you to confirm the replacement. It continues finding
and requesting confirmation until you press Q (for "quit replacing").
Alt-X reactivates either the find or replace routine, whichever was used
last. Alt-G replaces all appearances of the find string with no
confirmation. It may be terminated with any key press. When global
replace was thus terminated, Alt-X reactivates the confirmatory replace,
not the global replace.
_____
Leaving Edit Mode. . .
After editing is complete, press Esc. The first prompt you get asks
whether you want to save this edit (y/n), or go back to the editor (Esc).
(If you had hit the Esc key by mistake, hit it again to return to where
you were.) In some cases you botched the file up so bad you don't want
to save it, but most of the time you do. Press Y or Enter to accept the
default offering, or N to not save the edit.
The second prompt wants to know if you wish to reuse the original
file's date/time stamp for the editied file. N (the default offering) or
Enter results in the file's date/time stamp being updated to the current
system values, Y preserves the original values.
The final prompt wants to know if you want to save the original,
pre-edit version of the file as "*.BKP" (an arbitrary extension
designator I picked to show the file as a "BacKuP" from edit mode,
different from the form of the backup extension assigned by the backup
command B from the main module.) If you press N or Enter, the edited
version will simply overwrite the original. If you press Y, then the
previous backup file with the same name and extension ".BKP", if there is
one, will be deleted, the "current" original file will be renamed with
the ".BKP" extension, and the now-edited version will be saved under the
CMFiler -- Chapter 2 2-6
original name. If CF runs out of file space, it will ask you to put a
NEW disk into drive A to save the edited version.
The defaults for these three exit questions (Y, N, and N) have been
selected so that most users will be able to exit the editor with Esc and
three strokes of the Enter key for most of the edits they will do.
_____
Backup File Protection. . .
A small point of backup file protection. If, in the process of
saving the original version of the edited file, CF encounters a file
with the same name and the ".BKP" extension, it will simply overwrite
it, UNLESS it is assigned the read-only attribute and the original to
be renamed and saved is not. In this case CF will give you the option
of saving the read-only file.
_____
Creating a New File with the Editor. . .
A new file may be created from the main module by pressing the
letter F ("new File") and entering a name for the new file in the data
entry line. The new file will appear in the directory from which the F
command was issued.
_____
Help. . .
A one-page help screen may be summoned on-line at any time in the
editor with the command F1 or Alt-H, and exited with any keystroke.
CMFiler -- Chapter 2 2-7
*******************************
* *
* CMFiler -- Version 5.35 *
* *
*******************************
TUTORIAL -- Chapter 3: The TREE Functions:
CF lets you you view and operate on the subdirectory structure of
your disk in the format of a "tree", so-called because that is what it
looks like, with each subdirectory being a "limb" for the finer
"branches" in its substructure. This feature is invoked with the command
Shift-Tree. The command conventions in the tree module are the same as
you have encountered in the main screen, except on a much smaller scale.
The path(s) on entry are preserved from the main screen, and the
selected subdirectory structure in the source panel is highlighted as a
block. This source block may be copied, moved or (with GREAT CAUTION)
deleted. A fast machine can wipe out a lot of files in a big hurry, and
because of this I have added a second confirmation of any delete
operation that involves file destruction.
_____
The Display. . .
If you entered the tree feature with both panels open, you see that
the source/target panel relationship is preserved, and the paths displayed
at the top and indicated by the cursor highlights in the tree structure
itself are as existed from the main screen. The structure under the
cursor in the source panel, namely the selected directory and all its
files and subdirectories and their files, is shown as a block with red
background in color mode, while the current directory selected in the
target path is shown by its name highlighted with a black background.
If you entered the tree module with the right-hand panel closed,
you may open it the same way as you would from the main screen -- right
arrow, then press a drive letter at the prompt.
Line 1 at the top of the screen gives the status of two display
enhancement switches. The "hide" and "compare" switches are passed from
the main module, and have the same function. When the hide switch is on
(^Hide=Y), subdirectories with the hidden attribute set are masked (i.e.,
not displayed). When the compare switch is on (^Comp=Y), any match in
the target panel to the currently selected path in the source panel will
be highlighted in high-intensity yellow, similar to the highlighting of
file matches in the main screen. The hide and compare switches may be
toggled using Ctrl-H and Ctrl-C (shown as ^H and ^C); their states are
transmitted back to the main module on return.
The "Goto" string also appears on the top line when the Goto file or
Goto directory command is given (G or Alt-G). More on that later.
Information about the selected structures is contained in lines 23
and 24 at the bottom of the screen. In each panel, there are two pairs
of numbers, one pair for the amount of DISK SPACE used by the files in
the structure, a second pair for the NUMBER of files in the structure.
The first number in each pair desribes the files in the IMMEDIATE
directory that the cursor is on (think of this as the "root" of the
structure), and the second number in each pair describes the grand total
charactertics of the file ensemble in the ENTIRE structure.
The structure in the source panel is highlighted differently
because this is the structure you will be operating on.
Cursor movement is much the same in the tree display as in the main
screen. Left/right arrows switch panels, up/down arrows move one line
up and down the tree, PgUp/Dn move to the top/bottom of the panel and
then 20 lines, Home/End move to the very top or bottom of the tree,
and P (for "Parent") moves the cursor up to the directory's parent. Two
additional cursor moves are Shift-Up/Dn Arrow, which moves the cursor up
or down one directory in the same level; and Shift-Lf/Rt Arrow, which
moves the cursor directly across to the match if you are in compare mode
and have a path in the target matching the path of the currently selected
structure in the source (same feature as in main module).
Changing disks or drives (N), refreshing the panel from the disk
(Shift-R), renaming subdirectories (R), setting the hide attribute for a
subdirectory (2), and toggling the hide switch (Ctrl-Hide) all work the
same as from the main screen of CF, except that no wild cards are
permitted in the rename function.
_____
Copying structures. . .
If you, as I, never previously thought or visualized much about the
structure of the data on your hard disk, and never thought in terms of
moving around big blocks, the conventions about to be described will take
a little getting used to. However, you will come to find these
operations a great convenience.
Select in the TARGET panel a path under which you want to replicate
a substructure from the source panel. Pick a small structure in the
source panel for starters. Now picture the source block highlighted in
red (if you're in color -- in reverse video if monochrome) appearing
UNDER the subdirectory in the black background in the target panel.
Press C. The structure selected in the source panel is reproduced,
subdirectory-by-subdirectory, file-by-file, under the target path. (One
prohibition -- CF does not permit copying a structure onto itself. That
is, if you have the same drive selected in both panels, a structure in
CMFiler -- Chapter 3 3-2
the source and its HOST (the subdirectory it originates from) in the
target, the command C will be ignored.)
This copy operation is good for backing up major structures hard
disk-to-hard disk or hard disk-to-floppy. Once a backup structure exists
on another medium, you may KEEP it up to date the same way. Just
remember to put the cursor in the target panel to the HOST directory
of the structure you are backing up. Updating is possible because the
file copying and protection convention used in the tree module is the
same as that employed in the main program of CF. Namely:
o Files encountered in the target path with the same date/time
stamp are presumed identical, and not rewritten, unless the "file
overcopy" switch is on. As in the main module, it is toggled by the
command Shift-O, and its current state is displayed on the bottom line of
the screen whenever you press the Shift- key (either "Overcopy=N" or
"...=Y".) As with the "hide" and "compare" switches, the current state
of the "overcopy" switch is passed between the main and tree modules.
o Files of the same name encountered in the target that are newer
than the source, or that are read-only and the source is not, require
confirmation to be overwritten.
o Files of zero length in the source path are not allowed to
overwrite files in the target, newer OR older, without confirmation.
Copying in progress may be terminated using Esc. Any errors
during file copying automatically cause immediate termination of the tree
copy operation, with a caution note to check over the files in the new
structure. Check the file whose copying was in process first.
The copy function tries to anticipate the disk space required in the
target for the structure being copied, and will proceed without delay if
it finds there is enough free space on the target disk to assure the
completeness of the copy. It does not attempt to check the target path
for possible file duplications with the source block and take for credit
as "available space" the space occupied by files which will be
overwritten. If it senses not enough space to CLEANLY copy the whole
structure, it will alert you to the possibility of an incomplete copy,
and ask for confirmation to proceed anyway. Then, as the copy operation
proceeds, it checks disk free space before EACH file is copied. If there
is insufficient space for THAT file, it tells you so, and asks whether
you want to try the next file. The answer "n" terminates the operation.
When backing up structures on your hard disk using the tree
structure copy function, if the backup floppy is at all tightly packed,
you will get this advisory message. If you know there is a lot of file
duplication between the source structure and the backup floppy, you may
proceed with the copy operation with confidence that all the files will
be properly updated.
CMFiler -- Chapter 3 3-3
A final word on the copy function, and the move function discussed
below. The original cursor position in the TARGET panel, which specified
the target path for the operation, is reset after the copy or move
operation to show the TOP LINE of the new structure just created or
moved, so that you can see that the copy or move actually took place and
check using the information at the bottom of the screen that all the
files were reproduced or moved. However, on the next keystroke, the
target cursor is reset again to its ORIGINAL position.
_____
The "Copy Into" Function. . .
As seen above, the copy function replicates, as a structure UNDER
the target directory, the source block. The structure has the same
"name" in both cases, meaning that the top line of the block in the
source panel is the same as the top line of the replicated structure in
the target panel. Another way to view this is that the subdirectory
which serves as the "root" of both structures has the same name.
While this seems a convenient way to copy structures between two
large mass storage devices, as it forces a uniform convention on the
naming and construction of the structures themselves, it may not always
be the most convenient way to backup structures from a large mass storage
device to a smaller one. This sounds very cryptic, so let me try an
example. Suppose one of the major structures in your hard disk is a
directory under the root, containing all your files pertaining to your
word processor. Let's call this directory WORDS. In it are all the
program support files (the editor, the printer, the configuration files,
etc.), and two subdirectories, NOTES and LETTERS. If you were to copy
the structure with WORDS as its "root" to a virgin floppy, the screen
would end up looking like this:
C:\ A:\
|---ANYOLD.DIR ( +---WORDS
|---WORDS ) . . . . ( |---LETTERS
| |---LETTERS ). . . ( +---NOTES
| +---NOTES )
+---ZLAST.DIR
But suppose you plan to dedicate this floppy exclusively to the
backing up of the files in the WORDS structure, and so you really wanted
to put the word processor program and its support files INTO the root
directory of the disk in A:, and have the LETTERS and NOTES be
directories of the ROOT, not of a directory WORD. That is, you want not
to create the unnecessary layer of a directory called WORDS, but you want
the A: disk tree to look like this:
A:\ <Where the programs and support are here in the root>
|---LETTERS
+---NOTES
CMFiler -- Chapter 3 3-4
This is where the command "Copy Into" does the job. Just press the
letter I instead of C, and the contents of the structure in the source
panel block are copied INTO the target directory, instead of being
replicated as a new, complete substructure.
_____
Moving structures. . .
In much the same way, structures may be moved within the same disk
with the commands Shift-C (which replicates the structure entirely,
similar to Copy) and Shift-I (which moves the structure INTO the target,
like Copy Into). The condition for moving is that the same disk is
selected in both panels, and the target path is not currently the host of
the structure selected in the source panel. Since these operations use
the DOS rename service, no copying of any file data itself is performed,
just modifications to the directory tables, and so this is a QUICK way of
doing major reoganizations of your hard disk.
"Move" (Shift-C) and "move into" (Shift-I) default to straight
"copy" and "copy into" if different disks are selected in the source and
target panels. Moving may be terminated with Esc.
_____
Copying Just the Files. . .
The command J (for Just files) works somewhat like the Into command,
but copies just the files in the source subdirectory into the target
path, and not the subdirectories and their files and subdirectories, etc.
_____
Copying Just the Directory Array. . .
The command Alt-C is similar to C, but copies just the skeleton of
the structure, the directory array and no files, under the target path.
Alt-I, similar to I, copies just the directory structure INTO the target
path.
_____
Deleting Structures. . .
This is the scariest of all the tree functions, because a couple of
false keys and a fast hard disk and you're destroying files REAL fast.
For this reason, I have added a second confirmation step which warns you
how many files are about to be destroyed before it starts, and, for hard
disks, have used the same "soft" delete convention for the operator D as
discussed in Chapter 1 on the delete function in the main module. (If
the structure selected consists entirely of empty subdirectories, CF
CMFiler -- Chapter 3 3-5
doesn't bother asking for the second confirmation, since directories are
a whole lot easier to re-create than files.) Thus, when file destruction
is involved, three keystrokes are required to delete a structure -- D, Y,
and Y -- and, for a hard disk, the files deleted will reappear in the
CF_TRASH.CAN directory. As in the main module, the alternative "hard"
delete function is Ctrl-D.
Esc terminates tree deletion in progress. CF deletes ALL the
files in each subdirectory shown in the tree structure -- hidden and
read-only, as well as normal.
The move and delete operations use a routine to remove the (assumed
empty) tree structure in the cursor block in the source panel after all
the files have been moved or deleted. If there is a hidden subdirectory
in this structure, and the hide switch is set to "Yes", however, it will
not be seen by the file moving or file deleting routines, as well as the
directory removal routine, and a strange-looking error message will be
returned, namely "Access denied" during directory removal. This is
classic DOSese, at least most of the time, for "there is something still
in there." Toggle the hide switch with Ctrl-H and reexamine the remnants
of the structure you tried to delete.
To save you time, CF does not reread the tree from the disk after a
piece has been deleted, but rather marks the image it made in memory of
the tree structure to note the part has been deleted and should not be
used in drawing the tree. As a consequence, the statistics -- files and
KB used by the directories above the deleted portion, will not be
accurate. After several deletes, you can refresh the tree from disk with
Shift-R (Refresh).
_____
Delete Just the Files. . .
The companion delete operation to the "copy Just files" command is
Alt-D -- delete just the files in the source subdirectory. This is a
"hard" delete.
_____
Show the File List. . .
The command S, for "Show files", is the way to get a look at the
file names in a subdirectory without leaving the tree environment. This
command opens a window in the target panel showing the first 16 files in
the directory at the cursor in the source panel. You may continue to
scroll up are down through the source panel as before, but now the file
window changes as you do to show the contents of the current directory.
You may do any other operations that involve only the source window, such
as toggle the hide mode, make a new directory, delete a portion of the
CMFiler -- Chapter 3 3-6
tree, even get a new drive. Two-panel operations such as copy and move
are blocked in this mode by the presence of the "Show files" window.
To see more than the first 16 files, arrow across with the left or
right arrow to the file window and scroll up and down using the up/down
arrows, PgUp/PgDn, Home and End. View or edit the file with Enter or E,
as in the main module. Move between the tree and its file list with the
right or left arrow keys. To return to the main module and perform an
operation on a file in the file list, press Shift-Enter with the cursor
on that filename. CF immediately returns to the main module, to the
directory selected, and places the cursor on that file, ready for you to
edit, view, execute, copy, etc. Leave the "Show files" mode with Esc or
S from either panel.
_____
Find (Goto) a File. . .
One of the most powerful functions in the tree arsenal is the
filename finder. There are lots of file-finding utilities around, but
most of them tell you where a file is by giving you its path which you
have to type into a DOS "change directory" command. Cumbersome.
CMFiler offers a file finder which gives you an instant visual cue
to the directory(ies) containing the file you are looking for. Simply
press G (for "Goto file", just as in the main module). A data window
opens at the bottom for you to type the name of the file to search on.
It supports the "?" and "*" wildcards. When you type the first letter,
the "Show files" list opens in the opposite panel, and both the tree
display and file list dynamically adjust to show current matches. Keep
typing until the matches have been narrowed down as far as you need to
go, and press Enter or Esc.
Assuming there is at least one file that fits that specification,
note that several things have happened:
o At least one directory name in the tree is highlighted;
o The cursor has automatically repositioned to the topmost
highlighted directory; and
o All the file matches are listed in alphabetical order at the top
of the window, and are also highlighted.
If you have a long tree structure with subdirectories out of view
off the bottom of the panel, you may not see all of the highlighted
subdirectories containing file matches. If there are some subdirectories
in the tree containing matches but which are off the screen above of
below, a flashing "More" will appear at the top or bottom in the tree
display. The cursor movement in the "Goto file" mode that lets you
quickly position up or down to the next directory containing a file match
CMFiler -- Chapter 3 3-7
is Shift-Up/Down Arrow. Use Shift-Up/Down Arrow to see all the
directories with a match. Otherwise navigation and services are the same
as Show files mode.
If there are match files out of view above or below the file window,
a flashing "More" will appear at the top or bottom of the file window
frame. Quit "Goto file" mode with Esc, G or Alt-G.
_____
Goto a Directory. . .
There is also a quick way to navigate to a subdirectory anywhere in
the tree that, like the "Goto file" command, mimics a command in the main
module. It is Alt-G, and it behaves similarly to G above, except that
the file list is not opened in the other panel, and the tree display is
changed dynamically to highlight the directory name matches and position
on the topmost match. Type the name of the directory you are looking
for, and when it has been singled out to your satisfaction, type Enter or
Esc. Matches are highlighted in the target tree, if one is shown.
Shift-Up/Down Arrow to the next match up or down; otherwise navigation
and services are normal. Quit "Goto directory" mode with Esc, G or
Alt-G.
_____
Find Text. . .
Another powerful operation in CMFiler's tree services, to complement
the filename finder, is a file text finder. Press Shift-F (Find text).
Enter the text to be found (the search is case-insensitive), and then
enter up to eight filenames describing the types of files you want
included in the search, separated by + signs. The pipe symbol (|, ASCII
124) placed in front of a filename means "do not include this type". So,
for example, the entry:
CMFILER.*+|*.COM+|*.OVY+*.TXT
would result in a search of all files with the name CMFILER except
CMFILER.COM and CMFILER.OVY, plus all files with the extension .TXT.
CF's guess at this point on what part of the disk to search is that
you wanted to look only in the selected portion of the tree -- the
structure at and below the cursor. Just to be sure, it asks for
confirmation, and will allow you to extend the search to the whole disk
if you wish.
An option for the text search string is the character "*", which
means "accept any text". This is useful, for example, if you wanted to
see all the files of several different descriptions in the tree, but
didn't want to do each at a time using the filename finder (which only
CMFiler -- Chapter 3 3-8
supports one entry), and didn't care what they contained. Suppose you
want to see all the executable files on your disk. Just press Shift-F,
enter * as the text, and *.COM+*.EXE+*.BAT as the names to search on.
_____
Viewing or Editing Files. . .
The editor is accessible directly from the tree module. In either
the Show files or Goto file mode, with the cursor in the file list window
on a file name, press Enter to view or E to Edit the file.
_____
Deleting Files from the File List. . .
Another feature in the Show files and Goto file modes that speeds
disk cleanup is individual file deletion while the cursor is in the file
list. The following commands are available, which mimic commands in the
main file services module: Tag (or spacebar), which toggles the tag on
an individual file; tagAll, which clears or sets all tags; soft Delete
file(s) to CF_TRASH.CAN; and Ctrl-D hard delete file(s) off the disk.
This feature gives you a more macroscopic view of your disk while you are
cleaning it up.
_____
Print a Hard Copy of the Tree or Found Files. . .
Except in the Goto file and Find text modes, the command Alt-L (same
syntax as in the main module) prints a copy of the tree structure to the
printer. In Goto file or Find text mode, however, Alt-L prints an
alphabetical listing, organized by directory, of all the files identified
by the preceding search. The date, time, disk volume and search
parameters are all printed at the top of listing.
_____
Precaution Regarding CF_TRASH.CAN. . .
The directory CF_TRASH.CAN is not permitted as the source for a copy
or move operation. Since this directory contains files whose date/time
stamps were reset to the current date and time when they were "soft
deleted", they will generally APPEAR to be newer than more current files
of the same name elsewhere on the disk. Thus indiscrimant copying or
moving of them may overwrite later files. Files in this directory may
ONLY be moved/copied from the main module, and only after confirmation.
CMFiler -- Chapter 3 3-9
_____
Help. . .
A one-page help summary may be summoned on-line at any time within
the tree module with the command F1 or H.
_____
Leaving the Tree Functions. . .
There are three ways to leave the tree display. Enter goes back to
the main program display, with the path(s) for the left (and right, if
open) panel(s) as selected on the respective trees. Esc goes back to
the main program with the path(s) set as they were on entry. And
finally, Alt-Q has the same convention as in the main program -- quit CF
altogether, with default drive and current directory as selected in the
tree source panel.
CMFiler -- Chapter 3 3-10
*******************************
* *
* CMFiler -- Version 5.35 *
* *
*******************************
TUTORIAL -- Chapter 4: Launching User Applications:
So far, you have seen the features that make CF useful for file and
directory management -- neatness of file display, flexibility in
manipulating directories and files, transparency of operation, and even
the ability to edit files without leaving the environment of CF. What
really makes CF useful as an OPERATING environment, though, is its
ability to execute user applications with an economy of keystrokes.
Running programs in the DOS environment is one of the more
cumbersome and confusing aspects of this operating system, and therefore,
by its nature, this chapter is not terribly straightforward. I will make
it as simple as I know how.
_____
Terminology: User Application as "Child" Program. . .
A "user application" is nothing more than a "child" program,
executed by the DOS operating system under the command of the "parent"
program, which stays resident and waits for the "child" program to
finish. When you ran CF from the DOS system prompt, it was as a "child"
of the DOS COMMAND.COM command processor. Some word processors permit you
to "shell" to DOS, leaving the word processor program code resident in
memory. What the word processor program is actually doing is running the
DOS COMMAND.COM command processor as a child. From this DOS "shell", you
could run yet another program as a child. The more layers of child
programs you have at any time, the more RAM you eat up for the currently
running program with the resident code of generations of parents waiting
to take back over.
_____
Resident Footprint of CF. . .
If you use your computer for more than just one task, therefore,
you may find CF useful as an "inner shell" of your operating environment.
You may let all 99 KB stay resident (the CF.COM kernel plus the CF.OVY
overlay) while the child is running, or if you are memory-limited you may
force CF to give back to DOS for allocation to the child all but 19 KB
for the CF.COM kernel. This option is exercised by pressing K (for
"Kernel"), and then pressing either L or S at the prompt (for "Large" or
"Small"). "Large" is the default in a virgin copy of CF.COM. The
default setting embedded in the CF.COM file on disk gets updated to the
current value anytime you update the user-defined F1-F9 applications
table with the command Shift-F10 - Ctrl-Enter.
There is a tradeoff here. The large kernel option ties up more RAM
that could be used by the child if it is a humongous program, but the
return to the CF environment after it finishes is instantaneous. The
small kernel option is good for freeing the maximum amount of RAM for the
child, but there is a delay in returning to CF while the resident kernel
reloads the overlay. You be the judge. The best thing is that you can
decide before each launch, if you want, at the cost of only two
keystrokes!
_____
"Shelling" to DOS. . .
You may "shell" to DOS -- that is, execute the DOS command processor
-- any time you want from the main screen just by pressing S. A prompt
will tell you to return to CF when you are done by entering the DOS
"exit" command. This is the most elemental child program provided for in
CF.
_____
Review of DOS Command Line Structure. . .
Before talking about how CF launches applications, let's review how
it's done from the DOS command processor. Say you are in the root of the
C drive, and you want to start your PCWrite word processor, which is
named ED.EXE and is in a directory called PCW off the root. Further,
let's say you want ED.EXE to edit a file called USER.LST in a
subdirectory of PCW called DATA. At the C:\> prompt you could type:
C:\>PCW\ED.EXE C:\PCW\DATA\USER.LST
What this command tells DOS is: 1)leaving C as the default drive and
the root \ as the current directory, go to directory \PCW, find and
execute ED.EXE, and pass the string "C:\PCW\DATA\USER.LST" along to it as
a "command tail", so it knows what you want it to do. (The "command
tail" is nothing more than everything in the DOS command line after the
program specification (in this case PCW\ED.EXE).)
C:\>PCW\ED.EXE C:\PCW\DATA\USER.LST
|<-prog->| |<----command----->|
| spec | | tail |
If you have typed a lot of DOS command lines, you know how tedious
they can become, particularly if there is more than one parameter in the
command tail after the program specification. But you know that most of
the time, the one or more parameters in the command tail are filenames or
CMFiler -- Chapter 4 4-2
file specifications (with full path specifications in front of them), and
sometimes there are parameters the program will use to configure what it
does -- command line options.
The ensuing discussion may be simpler if you think about each step
in launching an application from CF as having to do with constructing
either the program specification (the first argument in the command line,
telling what program you want to launch), or the command tail (everything
else, which the launched program needs to know to do its thing).
_____
Launching a Program from the Main Screen. . .
You can run any "executable" (.COM, .EXE or .BAT) file from CF,
as a child program, anytime you want, from the main screen. There are
several ways to do it:
_____
Immediate Execution. . .
This is the quickest way. Just position the cursor on an executable
file entry on the screen and press Q (for "Quick execute"). This is
ideal if the program is located in the same directory as any files it
might look for, and it does not need a command tail to tell it what files
to operate on or what optional switches to set. This is just like typing
in the name of the program at the DOS command line, once you are selected
to the directory containing the program.
_____
Execution with Command Tail. . .
However, as discussed above many programs expect data in the command
tail, such as the name of a file to operate on, and CF has provided
several ways of constructing the DOS command line.
The simplest is this: First, position the cursor on the file you
want to execute and press X (for "eXecute"). This constructs the "program
specification" for the DOS command line. A prompt message will tell you
this file is ready for execution, its path and name put into a special
buffer in RAM, lined up and waiting for the launch command from you to
commence execution as soon as you select the drive and directory the
program will want as its default path to the files it will operate on.
Select the default path the program will want in either panel, and leave
that panel set as the source panel, and then press Alt-X. A data entry
window opens at the bottom, in which you may enter a command tail for the
program's use. Enter the command tail data your application expects, and
hit Enter to run.
CMFiler -- Chapter 4 4-3
_____
Execution with a Single File Name in the Command Tail. . .
The simplest case of the command tail is a single file name. CF
offers a shorthand way of running a program with a one-filename argument
as the command tail. Put the cursor on the name of the program file you
want to run and press X as before. The program is ready to run. Now
find the directory containing the file you want this program to operate
on, put the cursor on the filename, and press Ctrl-X. It's off and
running, editing (or whatever other operation it's doing on) that file.
Two keystrokes. Ctrl-X means "add the name of the file at the cursor to
the command tail and execute immediately."
It is a good idea to have the program file and its supporting files
in the same directory as the "operand" files when you use this method of
execution, unless the program is smart enough to locate its supporting
files in another directory in the DOS path environment.
_____
"Seeding" the Command Tail. . .
In many cases, the above quick way to specify a one-filename command
tail is not enough. You may find a need to put into the command tail the
names of several files from what will be the default path when the
program is executed, or the full specifications of several files not in
that path on execution.
In CF, there are shorthand ways of "seeding" the command tail window
with file specifications and filenames. These may be used either before
or after readying the program file for eXecution with X.
o To seed the command tail with the FULL specification (path PLUS
name) of a file on which you want the program to operate, put the cursor
on the filename and press Alt-C (the C in this case is a mnemonic for
"build Command tail"). The information window at the bottom will show
you the command tail in its current state. This procedure may be repeated
to build a command tail as long as there is room in the command tail
buffer. The command tail is limited to 125 characters.
o Just before pressing Alt-X to show the command tail window for
final pre-launch editing, you may Alt-Tag one of more files in the
directory you have set up as the program's default path. These file
names, WITHOUT paths specifications, will all appear in the command tail
in the order they were Alt-Tagged.
Now press Alt-X to open the data window with the seeded command
tail. Once you have edited the command tail the way you want it, hit
Enter, and the program is off and running. After the launched program
finishes and returns control to CF, its file specification stays in the
CMFiler -- Chapter 4 4-4
"execute" buffer until you ready another executable file with X, so you
may perform multiple operations of the same program just by seeding the
command tail again as above, and pressing Alt-X again. As a further
time-saving feature, you may recall the last command tail by pressing the
up arrow or PgUp while in the command tail entry field.
Once you get used to the above conventions, you will find that in
many situations you don't need to edit the seeded command tail, and the
key sequence Alt-X-Enter seems cumbersome. For those cases I have
included the option Shift-X. Use it after you have seeded the command
tail using Alt-C and/or Alt-T, and avoid the extra Enter stroke. Its
effect is to commence execution of the program with the as-seeded command
tail, with no edit.
_____
Changing the Command Tail "Seed" Delimiter. . .
You probably noticed that there was always a space between multiple
entries in the seeded command tails created using the Alt-C and Alt-T
seeding operators by the procedures above. But what if your application
looks for commas as the field delimiters for data in the command tail,
instead of blanks? Just press Ctrl-Enter from the main screen to pick
from three choices for default command tail field delimiters -- space,
comma, and semicolon.
_____
Customizing Your User Application File Specifications. . .
Got a few pet applications that you run more than most? Save the
aggravation of hunting them down and pressing Q or one of the X key
sequences each time you run them. You can call them with just a touch of
one of the function keys F1 through F9! To set this up, press Shift-F10.
You will see a data entry screen that lets you specify up to nine
executable file names in the entries "F1 = ", "F2 = ", etc., and an
optional default command tail offering for each, labelled
"F1 Comm Tail = ", etc. Further down the page, you will see places for
similar entries for ZIP and UNZIP, and a bottom entry labelled
"Password = ". (You may use this last entry to specify a password which
must be entered to get back to the main screen from the screen-saver mode
-- a handy way of blocking undesired access to your files.)
In any "Fn = " data window, just type in the filename, including
extension, of an executable file you use frequently, and, optionally, any
frequently used command tail that you would like to show up as a default
offering when you ready the file for execution. You do NOT need to
include the path in the file specification if the file is on one of the
paths listed in the DOS path environment (via a previous "path" command
from the DOS system level) -- CF will hunt it down and update its
internal record of where that file is, so it doesn't have to hunt the
CMFiler -- Chapter 4 4-5
next time you call it. However, if you DO include a path specification,
be sure it is complete (e.g., "C:\LETTERS\ED.EXE").
Once you have made all the entries you wish, press Ctrl-Enter to
record the new entries and leave the F-key data entry screen. (Esc will
abort the edit.) CF will then find and update the CF.CFG configuration
data file to add the customized F-key information. (A caveat for DOS v2
users -- CF will find CF.CFG PROVIDED it is on a path in the DOS path
environment, and you have kept it named the same as the kernel and
overlay files).
There are three ways to now use these F-key options: (This seems
awfully confusing, but stay with me -- these features are what will
really make CF useful to you!)
o Press the F-key corresponding to an application you specified
with the Shift-F10 operation. (This may be done from either the main
screen OR the F-key information screen shown by pressing just F10.) You
will get the message at the bottom that that executable file is readied
for execution, just as though you had hunted it down and pressed X. Seed
the command tail and set up the path desired in the source panel as
before, and press Alt-X to get the command tail entry window, also as
before. This time, though, if you had specified a default command tail
offering for this F-key, it would appear in the command tail window, IN
FRONT OF the seeded entries, if any. Edit the command tail if desired,
and press Enter to start execution.
o OR, if you know the command tail will be the way you want it,
and you are bugged by the extra Enter keystroke to accept the seeded
command tail, seed the command tail with Alt-C if you want, set up the
source panel to the directory you want, Alt-Tag any files from this
directory you want to appear in the command tail, and hit Shift-F-key.
The application will run immediately with the seeded command tail, with
the default F-key command tail offering between the Alt-C seeds and the
Alt-T seeds.
o OR, if you are just operating on one file, put the cursor on the
name of that file and press a Ctrl-F-key for instant one-key execution.
In this case, the F-key default command tail offering will appear in the
command tail preceeding the name of the file the cursor was on. (This is
the feature I use most.)
(There is, in fact, a rule as to where the F-key default command
tail offering gets placed during the construction of the command tail. It
is inserted at the point that the F-key itself (or F-key modified by
Shift- or Ctrl-) is pressed. The file names Alt-Tagged in the current
directory always appear last. In an exotic case, for example, you could:
(1) Alt-C a file spec, (2) press F1, (3) Alt-T a file name, and press
Shift-X to execute with no edit of the command tail. The program
assigned to the F1 key would run, with a command tail consisting of the
file spec Alt-C'd in (1), the F1 default command tail offering, and the
CMFiler -- Chapter 4 4-6
file name Alt-T'd in (3), all separated by the command tail delimiter
character last selected from the main screen with Ctrl-Enter.
The business above may seem cumbersome, but if you spend a lot of
time typing the same old things in at the DOS command processor
prompt, you will find it is worth the investment of time to figure out
and use.
_____
A Further Execution Option -- Instant ZIPping/UNZIPping. . .
Phil Katz' PKZIP.EXE and PKUNZIP.EXE (c) have become the dominant
file compression and decompression programs in the shareware market,
so much so that I wrote a special explicit feature to employ them with
just a few keystrokes. The commands which invoke these programs from the
main menu are Z and U, respectively. CF can find these programs as long
as you have not renamed them from PKZIP.EXE and PKUNZIP.EXE, and they are
on one of the paths that you specified in a DOS path environment. If for
some reason you want to rename them or put them on a path not listed in
the DOS path environment, you may specify them explicitly via the Shift-
F10 data screen.
_____
ZIP a File. . .
1. Decide where you want the compressed file to go, and select
that path in one of the panels. If you are updating an existing .ZIP
file, Tag or Alt-Tag it while you are there.
2. Now switch to the other panel, and select the path to the files
you want to compress. Tag them, Alt-Tag them in the order in which you
want PKZIP to compress them if order is important to you.
3. Now then press Z. CF will show you a command tail at the bottom
of the screen, in the PKZIP syntax (options first, then .ZIP file first,
then list of files to be ZIPped.) Since the files to be ZIPped are in
the current source path as set up by CF when you Alt-Tagged them, no
explicit path is included for them. You may edit the command tail. Once
you are satisfied with the command tail, press Enter.
[In step 2 above, if you do not Tag or Alt-Tag any files for
compression in the source path, CF assumes you want to ZIP them all, and
places "*.*" in the file list argument of the PKZIP command tail.]
[In step 1 above, if you do not Tag or Alt-Tag a target .ZIP file,
CF assigns a default .ZIP file name for PKZIP to create, which is either:
(1) the first Tagged or Alt-Tagged file in the source path from
step 2, or
CMFiler -- Chapter 4 4-7
(2) if no source files are Tagged or Alt-Tagged in step 2, the
name of the file the cursor is on. (PKZIP attaches the
default .ZIP extension).]
[In step 3 above, if you know you don't have to edit the command
tail, you can bypass the extra Enter keystroke to enter the command tail
by pressing Shift-Z instead of Z.]
_____
Now UNZIP a File. . .
1. Set up one panel with the target path for the UNZIPped files.
2. Switch to the other panel, select the path with the .ZIP file
to be UNZIPped, and put the cursor on it.
3. Press U, edit the command tail if necessary, and press Enter.
As with ZIPping above, if you know you don't have to edit the command
tail, press Shift-U instead.
The PKZIP/UNZIP utilities are available from most bulletin
boards, or may be had for a $47 registration fee from PKWARE, Inc.,
9025 N. Deerwood Drive, Brown Deer, WI 53223 (BBS 414-354-8670).
_____
Tailoring CF for custom ZIP/UNZIP spec. . .
If for some reason you want to specify an explicit path to
PKZIP/PKUNZIP, you may include an explicit file specification using the
Shift-F10 feature. Just follow the procedure and precautions under
"Customizing Your Executable File Specifications" above, and operate on
the "Compress = " and " Extract = " fields.
If you are familiar with Phil Katz' option switch syntax and find
yourself using one or more switches most of the time, you may enter
standard options in the indicated fields ("Compress Options =" and
" Extract Options = ") while you are at it.
Once you are comfortable using the ZIP/UNZIP feature of CF, and you
find you are not having to edit the ZIP/UNZIP command tail most times,
you may start getting bugged about having to always hit Enter when you
see the command tail displayed. There is an alternative! Just like with
the tailored F-keys, hit Shift-Z/U for instant ZIPping/UNZIPping.
CMFiler -- Chapter 4 4-8
_____
Using Other Compression Utilities. . .
As it happens, some other compression utilities use the same command
line construction as the PKWare utilities. Specifically, the ARJ utility
by Jung and the LHA utility by Yoshizaki use command lines of the form:
archiver options archivefile file1[,file2[,file3[,...]]]
where archiver is the program spec, options is the collection of commands
and switches to accomplish the desired operation, archivefile is the spec
to the file which will contain the compressed data, and file1, file2,
etc., are the specs to files to be compressed.
The CF ZIP/UNZIP facility may be used to accomplish compression and
extraction with either ARJ or LHA, and perhaps others as well. Here is
how to do it with LHA as an example:
o Make sure the file LHA.EXE is on one of the paths specified in
your DOS environment, so that CF can find it.
o In CF, press Shift-F10 to bring up the user-defined
applications screen for editing, and down-arrow to the line
"Compress = ". Type in LHA.EXE. Do the same for the line
" Extract = ", since for this utility, unlike the PKWare set,
the same program does both tasks.
o For the most rudimentary compression and extraction options
with LHA, the only parameter required for the "Compress Options
= " line is the letter a, and for the " Extract Options ="
line, the letter x. These parameters tell LHA whether to add
(a) or extract (x). Type them in, and press Ctrl-Enter to save
the new data.
Compressing and extracting now work just the same as previously
described for the PKWare utilities. To compress, optionally Tag ot Alt-
Tag the archive file in one panel, go to the other panel, find the
directory with the files to be compressed (the same path is permitted)
and Tag or Alt-Tag them, press Z, edit the command tail if necessary and
press Enter. To extract, set up one panel with the destination path for
the extracted files (may be the same as the source), arrow across too the
other panel, put the cursor on the file to be extracted and press U.
Edit the command tail and press Enter.
CMFiler -- Chapter 4 4-9
_____
Specifying a Password for Access from Screen Saver. . .
At the very bottom of the Shift-F10 screen you see a data line for
password. You may enter any combination of alphanumeric characters up to
six letters. This password must be given to restore access to CF from
screen saver mode. The password routine is case insensitive.
CMFiler -- Chapter 4 4-10
*******************************
* *
* CMFiler -- Version 5.35 *
* *
*******************************
REFERENCE -- Description by Operation:
_________________________
DISK/DIRECTORY OPERATIONS:
N -- New disk -- Select a new disk drive for the source panel, the one
with the cursor. Must be used to announce disk media changes. In
right-hand panel, Enter after N closes the panel.
Enter -- Display subdirectory in source panel -- With the cursor on a
subdirectory or the "<Parent>" line, changes to that subdirectory or
parent in the source panel.
Shift-Enter -- Display subdirectory in target panel -- Displays the
subdirectory under the cursor in the target panel, and changes to
it.
P -- Display Parent directory in source panel -- Quick way of returning
to the parent directory with the cursor positioned anywhere in the
listing of a subdirectory. The same thing can be done with two
strokes -- Home (to get to top line of the subdirectory listing,
which is always "<PARENT>"), then Enter.
Shift-P -- Display source directory's Parent directory in target panel --
Quick way of showing the parent of the current directory in the
target panel and switching to it.
\ -- Display root directory in source panel.
Shift-\ -- Display root directory of source disk in target panel.
Shift-* -- Display source directory in target panel.
Alt-G, followed by a typed string -- Move cursor to ("Go to...") the
directory described by that string.
M -- Make subdirectory (Mkdir) -- With the cursor anywhere in the
listing, pressing M opens a data window at the bottom of the screen
for entering the name of a new subdirectory you want to make. CF
checks the entry for validity; if invalid, the window simply clears
and waits for another entry. A valid entry appears in the proper
alphabetic position on the screen.
D -- Delete -- With the cursor on a subdirectory and no files tagged,
removes that subdirectory if it is empty ("void"). IF THE CURSOR IS
ON A SUBDIRECTORY AND FILES ARE TAGGED, DELETES THE FILES.
Alt-L -- Print directory Listing -- Prints a listing of the current
directory if cursor in directory panel, and includes notes if cursor
in one of the Notes modes (Shift-N or Ctrl-N).
Shift-T -- Transfers control to the TREE module. Displays the disk(s)
selected in the panels in their directory tree structures, and puts
the cursor(s) on the structure(s) pointed to by the current path(s).
__________________________
FILE OPERATIONS:
G, followed by a typed string -- Move cursor to ("Go to...") file
described by that string.
Shift-Lf/Rt Arr -- Jump across to identical file name in opposite panel
when highlighted in comparison mode.
T or Space -- Tag file -- Applies or clears a "normal" tag to the file
under the cursor (i.e., toggles the state of the tag). Window at
bottom of screen shows number of files tagged.
Alt-T or Alt-Space -- Alternate-Tag file -- Applies or clears an
"alternate" (sometimes referred to as "append" because of its
principal function) tag to a file. "Alt tags" are numbered (1-9,
a-z) to show the order of application, for the order-critical
operation of file concatenation, discussed below, and are white on
red.
A -- Tag All files -- Applies or clears normal tags to all files.
Ctrl-A -- Toggle the state of All normal tags.
Alt-M/E -- Tag all files with same naMe/Extension as file at cursor; does
not reset tags already present.
Alt-N -- Tag all files Newer than file at cursor.
Alt-O -- Tag all files Older than file at cursor.
Alt-D -- Tag all files same Date as file at cursor.
Alt-P -- Tag same files in oPposite panel as tagged in source.
(NOTE ON TAGS: Tags are aids for quickly performing multiple
file operations, but are "volatile", and generally go away with
any operation that changes or updates a panel. Tags are NOT
applied in any way to the magnetic media.)
CMFiler -- Operation Reference OpRef-2
C -- Copy -- Copies tagged files from source to target, or the one file
at the cursor if none tagged. Does not bother overwrite identical
files, asks for verification before overwriting newer files or read-
only or hidden files, and protects against some cases of overwriting
good files with files created in error.
With files "Alt-Tagged", creates "concatenated" file in target
with same name as first "Alt-Tagged" file, but extension ".APF".
If insufficient room on target path, does not perform operation,
and signals the user.
Shift-C -- move -- Moves files from one subdirectory to another on the
same disk. If conditions are not satisfied for moving (i.e., same
disk, different directories), shifts back to copy mode.
B -- Back up -- Copies tagged files (or file at cursor if none tagged)
from source to source, assigning to each new file the extension ".~"
(tilde) plus the first two letters of the original file's extension.
This results in backup files with unique names unless two files
differ only in the third letter of the extension (eg, ".BAK" and
".BAS" would both back-up to ".~BA"). With files "Alt-Tagged",
creates file in source with the "backup" form of the "append"
extension (ie, ".~AP"), and concatenates. If insufficient room on
source path, does not perform operation, and signals user.
D -- Delete -- Deletes all tagged files on source path. If no files are
tagged, deletes only the file under the cursor. Treats normal tags
and "Alt-Tags" the same. Requests confirmation before file
destruction. On hard disks, this operation is a "soft" delete, in
which files are redated to current date/time and moved to directory
\CF_TRASH.CAN (created by CF). Thus good files inadvertently
deleted are readily recoverable. On floppy drives, this operation
is a "hard" delete, using the DOS delete file function.
"Undeleting" is not available in the CF environment, but other
utilities contain "undelete" facilities, but these are not always
reliable.
Ctrl-D -- "hard" Delete -- Uses DOS delete function regardless of disk
type.
Shift-F -- Freshen files -- "Freshens" the files in the source panel from
the target. Useful in updating backup disks. If no files tagged in
source, tags all in source, then tags in target all NEWER versions
of same-named tagged source files and copies them to source. If any
files were tagged in source, only these files are looked for in
target, vice all files in source.
R -- Rename file or directory -- Prints name of file at cursor, and opens
window below it for new name, offering the current name as the
"seed". Type/edit new name and press Enter. Or first arrow up and
edit the current name field, for example to use the "*" wildcard.
One use of "*" is permitted (either the name or extension). If used
in the current name field, it must be followed in the new name
field. Names are checked for legality before renaming is attempted.
CMFiler -- Operation Reference OpRef-3
Alt-R -- copy with Rename -- Copies the one file at the cursor in the
source panel to the target, after entry of new name in data window.
Enter -- Display file -- With the cursor on a file, views that file.
F -- make new File -- With the cursor anywhere in the listing, pressing F
opens a data window at the bottom of the screen for entering the
name of a new file to be created. Entry is checked for validity.
If valid, control is transferred to the line editor for file
creation and editing.
0, 1, 2, 3, 4 -- Toggle File Attribute -- Pressing the number 0 clears
all attributes for any files tagged, or for the file under the
cursor if none are tagged. 1 toggles the read-only attribute, 2 the
hidden attribute, 3 the system attribute, and 4 the archive
attribute. (Only the number keys at the top of the keyboard are
active for setting file attributes. The numbers on the keypad are
mapped to their corresponding cursor movement functions, even when
the NUM LOCK is set. (The command syntax can be remembered as
"1234=RHSA".)
L -- print fiLe -- Put the file under the cursor into the queue for
printing as a background process while in CF or any child of CF.
(Printing is suspended during any DOS functions, such as disk
read/write.) Up to five files may be thus queued. Shift-L displays
the print queue. Ctrl-L clears the print queue. Ctrl-F while files
are printing from the print queue sets an internal flag which causes
a form feed to the printer at the end of the file most recently
added to the print queue if the file itself does not have a form
feed as its last character. (At times when the printer is not in
use by CF, Ctrl-F sends a form feed immediately.)
V -- Volume label -- Permits entry of a new volume label for the disk
Shift-O -- set user Option switches -- Permits the resetting of six user-
specified Yes/No option switches for 1) redefining the F1 key as
Help, 2) redefining "D" as "hard" delete, 3) clearing the I/O buffer
structure if found before write (eliminating inadvertent copying of
stray data into sector slack space), 4) overcopying identical-
appearing files during copy operations, 5) refreshing directory list
on return from screen saver, 6) un-hiding the NARATIVE.CF notes
file, and 7) selecting monitor type.
Alt-F -- Change file date/time stamp.
CMFiler -- Operation Reference OpRef-4
_________________________
FILE EDITING/VIEWING:
Enter -- View a file -- When the cursor is placed over a file, Enter lets
you view the file on the screen. In this mode, the lower right
screen display gives information about the byte the cursor is on.
Alt-H displays help screen. Alt-Plus and Alt-Minus toggle the
bottom information display and the color-enhanced display of record
delimiters (CR, LF, CR+LF, LF+CR). Esc or Enter exits View mode.
E -- Edit a file -- When the cursor is placed on a file as above, E lets
you edit the file. Cursor positioning is the same. Additional
control keys are Bksp, Delete Tab/Shift-Tab; Insert (toggles mode
between Push Right and Overstrike); Enter (inserts the record
delimiter previously selected with Ctrl-Enter; default is CR+LF).
Ctrl-Y deletes line; Ctrl-D deletes to end of line. F1 or Alt-H
provides a one-page help screen. Block operations are performed with
Alt- {M (mark), Y (delete), V (move), C (copy), O (output to file),
and P (print)}. Ctrl-F form-feeds the printer. Enter any ASCII code
through Alt-Keypad numerical combinations, except NULL, which is
entered by Alt-N.
Esc exits Edit mode, and CF asks you if you want to save the edit.
In most cases you will probably answer yes. Then it asks if you
want to reuse the original, prior-to-edit file's date/time stamp on
the revised file, and if you want to rename the original file as
*.BKP. (When you do, CF deletes any previously saved file with the
name *.BKP, even if it had a read-only attribute.) If it encounters
problems with disk size or errors, it will give you further
instructions. For example, if after saving the original file as
*.BKP, it finds insufficient room on the source path to write the
edited version of the file, it will instruct you to put a new disk
in drive A, just so it can capture the edit for you.
CMFiler -- Operation Reference OpRef-5
_________________________
TREE OPERATIONS:
Cursor Movement -- Up/Down Arrow moves one screen line at a time.
PgUp/PgDn moves to top or bottom of screen, then moves screen 19
lines, or to very top/bottom of tree. Home/End moves to very
top/bottom of tree. Shift-Up/Down Arrow moves up/down one
directory at same level (to next subdirectory up or down in parent
directory), or, in "Goto file", "Goto directory" and "Find text"
modes, to next directory with a match to the find string. P moves
up to parent. Left/Right Arrow changes panels, making the other
panel the source. Shift-Left/Right Arrow moves across to the path
match in comapre mode.
N -- New disk -- Allows changing drives or disks, as in main module.
M -- Makes directory under path at cursor.
2 -- Toggle directory's hide attribute.
Alt-L -- Prints a hard copy of the tree Listing shown on the source panel
side of the screen in straight tree mode. Prints a listing of all
the file matches while in Find file or Find text mode.
D -- Delete structure -- deletes the entire structure highlighted in the
cursor block in the source panel. This is a "soft" delete on hard
disks, in which the deleted files are redated and collected in
\CF_TRASH.CAN.
Ctrl- D -- "hard" Delete structure. Uses the DOS file delete function
regardless of disk type.
Alt-D -- Delete just the file in the source directory. This is a "hard"
delete.
C -- Copy structure under target path -- Replicates the structure in the
source panel's cursor block UNDER the directory selected in the
target panel.
Shift-C -- Move structure under target path -- If both panels selected to
the same disk, moves the structure in the source panel's cursor
block UNDER the directory selected in the target panel. If
different disks selected, defaults to Copy.
Alt-C -- Copy just the directory array under target directory, no files
copied.
I -- Copy structure Into target path -- Similar to copy, but does not
replicate the highest level subdirectory in the source block, but
rather puts its files directly INTO (vice UNDER) the target
subdirectory, and replicates its substructure into the target path.
CMFiler -- Operation Reference OpRef-6
Shift-I -- Move structure Into target path -- If both panels selected to
same disk, moves the source structure INTO (vice UNDER) the target
subdirectory, as with I.
J -- Copy Just the files in source directory to target directory.
Shift-J -- Move Just the files from the source subdirectory to target.
S -- Show files in opposite panel. Arrow across to file list if desired,
then up/down with normal cursor moves. In file list, Enter returns
to main module, to directory and file selected. Arrow back to tree.
Esc or S cancels "Show files". From file list, V or E to view or
edit a file.
G -- Goto file -- Type filename for search. Wildcards are supported.
Positions to first match; directories with matches and matching
files are highlighted. Shift-Up/Down Arrow seeks next directory up
or down with match. Arrow across to file list as in "Show files",
move up or down, arrow back to tree, or Enter to file in main module
for file operation. Esc, G or Alt-G to cancel "Goto file" mode.
From file list, Enter or E to view or edit a file.
Alt-G -- Goto directory -- Type directory name for search. Navigation
within tree and exit are same as G.
Shift-F -- Find text -- Specify text to search for, and up to eight
filenames with wildcards. Directories and files with matches are
highlighted.
Shift-O -- Toggle "file Overcopy" switch. With switch off (=N), files
already extant in target with same date/time and size as in source
are not overwritten. With switch on (=Y), they are.
Ctrl-H -- Toggle the Hide switch and redisplays trees. With switch on
(=Y), directories with hidden attribute are not displayed. With
switch off (=N), hidden directories are displayed, and are denoted
with a highlighted "*H"
Ctrl-C -- Toggle the Compare switch. With switch on (=Y), target disk is
searched for any path that matches that currently selected in
source, and, if one is found, adjusts screen if needed so it is
visible, and highlights it in high-intensity yellow.
Enter -- From tree structure, returns to main module with currently
selected path(s), and cursor positioned to top of listing. From
file list in "Show files" or "Goto file" mode, views file. Shift-
Enter from file list returns to main module with cursor on file.
Esc -- Returns to main module with path(s) as set on entry.
Alt-Q -- Quits CF altogether; default path as selected in source.
CMFiler -- Operation Reference OpRef-7
_________________________
APPLICATION LAUNCHING (CHILD PROCESSES):
S -- Shell to DOS -- Set up a DOS shell and do any DOS operations. Exit
DOS with the "exit" command when finished. CF then looks for and
tries to reestablish the current directories as they appeared in the
panels at shell execution.
Q -- Quick execute -- Immediately executes file under cursor, if
extension is .COM, .EXE or .BAT. Paths are as selected, ie, default
drive/current subdirectory is same as the executable file is in, and
the current subdirectory for any other drive is as last set by you
through a CF panel display.
X -- prepare to eXecute with command line -- Readies file at cursor for
execution. File remains ready awaiting execution, initiated by one
of the followup key combinations Alt-X, Shift-X or Ctrl-X after
paths are set and command line seeded as desired.
Alt-X -- edit command line and initiate eXecution -- Opens a window for
editing the command line containing any "seeds" placed by Alt-C
and/or T or Alt-T. Execution of the readied application starts by
pressing Enter. The previously used command line may be summoned
by pressing the Up Arrow or PgUp.
Shift-X -- initiate eXecution, no editing of command line. Same as Alt-
X, except file executes command line as-seeded, with no editing.
Tagged files in active panel are added to command line.
Ctrl-X -- initiate eXecution, no editing of command line, and ONLY the
file name under cursor is added as last entry in seeded command
line. Tagged files in active panel are ignored.
Alt-C -- seed Command line with file specification. Adds the full
specification, including path, of the file under the cursor to the
command line buffer, and shows status of command line being built.
Command line may be added to using this feature before or after
executable file is readied with X.
T or Alt-T -- Tag the file names in order for addition to the command
line. Tagged files are added to the seeded command line as the
final step after Alt-X or Shift-X is pressed.
Ctrl-Enter -- select delimiter for use by the "seeding" operations Alt-C
and T or Alt-T between entries of command line. Choices are blank,
comma, semicolon.
CMFiler -- Operation Reference OpRef-8
Shift-F10 -- specify a user-defined executable file specification and
optional default command line offering for up to 9 applications,
assigned to F1-F9. Also specify ZIP/UNZIP command line default
switches, and an access password. Ctrl-Enter to record selections
in current copy of configuration file. Or Esc to cancel edit.
Ctrl-Enter also records as default values for the next execution of
CF.COM the current states of the Hide and Compare switches, and the
current settings for file ordering mode, resident kernel size
option, command line delimiter.
F10 -- Display current entries F1-F9, Compress/Extract options, password.
The commands F1-F9, Shift-F1-F9, and Ctrl-F1-F9 may all be issued
from this display.
F1-F9 -- ready a user-defined executable file spec -- Effect is same as
locating the file with the cursor and hitting X. F-key default
command line offering is added to command line, which may already
have seeded entries.
Shift-F1-F9 -- ready user-defined executable, add its default command
line offering to the command line being built, add any Tagged files
in current directory (active panel), and execute immediately.
Ctrl-F1-F9 -- ready user-defined executable, add its default command line
to the command line being built, add ONLY the file name under the
cursor, and execute immediately. Tagged files in active panel are
NOT added to the command line before execution.
Z -- PKZIP (c) compression -- Be sure PKZIP.EXE is on one of the paths
in your DOS path command, or specify the complete path spec to it
using Shift-F10.
To ZIP, select on one panel a target path for the compressed .ZIP
file, and optionally Tag or Alt-Tag an existing .ZIP file. Then
switch to the other panel and select a source path, optionally Tag
or Alt-Tag files to compress in order of desired appearance on
command line, press Z, edit command line if necessary, and press
Enter. To avoid this extra Enter keystroke, hit Shift-Z instead.
U -- PKUNZIP (c) extraction -- As above, be sure PKUNZIP.EXE is on a path
set in your DOS path command, or specify the complete path spec to
PKUNZIP.EXE with Shift-F10.
To UNZIP, select on one panel a target path for the extracted
files, switch panels, select the directory with the .ZIP file to be
extracted, place the cursor on it, and press U. Edit command line,
if necessary, and press Enter. Alternatively, for instant
UNZIPping, use Shift-U.
CMFiler -- Operation Reference OpRef-9
_________________________
DISPLAY ENHANCEMENT FEATURES:
"+" and "-" -- Shift the file size display to expanded and contracted
mode. Expanded mode shows explicit size, but uses the file time
field. Contracted mode is in KB or MB.
H -- Help -- Shows a three-page help screen with abbreviated explanation
of the most-used operations.
Ctrl-N -- edit Notes -- Displays the directory notepad in the opposite
panel for viewing/entering/editing narrative comments about files.
All the editing and cursor control key combinations work. Notes
follow the files around when copied. CF updates the file on exit
(Ctrl-Enter or Esc). Files may be viewed/editied from the Notes
screen with Alt-V/Alt-E, tagged with Ctrl-T or Alt-T for subsequent
mass action after exit from edit Notes.
Shift-N -- view Notes -- Displays Notes in opposite panel, but leaves
full access to all directory and file services in the source panel,
including operations like Copy which operate to the target path.
Ctrl-O -- select file Ordering mode -- Permits selection of one of seven
modes of file ordering. Cursor shows current selection.
Ctrl-H -- toggle Hide switch -- Changes the state of the hide-enable
switch, shown at the top of the screen. With the switch on ("Y" for
Yes), CF does not display files whose hide attribute is set. With
the switch off ("N" for No), all files are shown.
Ctrl-C -- toggle Compare switch -- Changes the state of the compare-
enable switch. In compare mode ("Y"), any file in the target path
whose name is the same as the file in the source path under the
cursor will be shown and highlighted.
Ctrl-M -- Mask -- Allows editing the Mask template for the panel, whose
initial value is *.* Tab moves cursor to the extension field,
Shift-Tab to the name field. Press Enter to enter the template
modification and redisplay the panel.
5 -- Toggles date/time display on main screen.
Ctrl-P -- color Pallette selection -- Allows user to change color scheme
to any of four sets on color monitors.
Ctrl-E -- alphabetic casE selection -- Offers a choice of four case
conventions: Dirs and files all caps; Dirs in caps, files in lower;
all in lower; and "modified-Tauck", where the first letter of the
file and each letter following a non-alphabetic character is
capitalized.
CMFiler -- Operation Reference OpRef-10
_________________________
MISCELLANEOUS:
Alt-Q or Esc-other key -- Quit CF -- Terminate to DOS. Esc-other key
reestablishes the default drive/directory CF encountered on
execution; Alt-Q leaves as currently set in source panel.
Password Protection -- Bottom entry in Shift-F10 screen is a password
entry window. If a password is entered, it must be given to return
to main screen from the screen-saver mode.
Ctrl-S -- Forces main screen into Screen-saver mode immediately, rather
than waiting 1-1/2 minutes. Good for instantly invoking password
protection.
Shift-S -- Save display options. Saves current values of Hide and
Compare switches, file Ordering scheme, resident Kernel size
selection and Date/Time display on/off.
Ctrl-F -- Form feeds the line printer.
CMFiler -- Operation Reference OpRef-11
*******************************
* *
* CMFiler -- Version 5.35 *
* *
*******************************
MEMORY MAPS:
1. CMFiler running:
---
|--- 19 KB Kernel
---
|--- 82 KB Overlay
---
|--- 16,32, or 64 KB for directory lists
---
|--- 32 KB reserved for editor copy buffer
---
|--- All remaining allocatable RAM (48 KB min) -- File copy buffer
---
2. Editor module of CMFiler running:
---
|--- 19 KB Kernel
---
|--- 82 KB Overlay
---
|--- 16,32, or 64 KB for directory lists
---
|--- 32 KB for editor copy buffer
---
|--- All remaining allocatable RAM (48 KB min) -- Line pointers,
| file area and line buffer
---
3. Application Launched under CMFiler:
---
|--- 19 KB Kernel
( --- )
( |--- 82 KB Overlay (Left intact if "Large" kernel option in force )
( --- )
|--- All remaining allocatable RAM -- For Application's use
---